From 688b5f42e9bfe498d7af7075d4d8f4429867f3a3 Mon Sep 17 00:00:00 2001 From: Miles Macklin Date: Fri, 9 Jun 2017 13:41:15 +1200 Subject: 1.2.0.beta.1 --- demo/scenes/shapechannels.h | 48 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 demo/scenes/shapechannels.h (limited to 'demo/scenes/shapechannels.h') diff --git a/demo/scenes/shapechannels.h b/demo/scenes/shapechannels.h new file mode 100644 index 0000000..22ee649 --- /dev/null +++ b/demo/scenes/shapechannels.h @@ -0,0 +1,48 @@ + + +// demonstrates how to make particles collide with +// selected collision shapes based on the channel mask +class ShapeChannels : public Scene +{ +public: + + ShapeChannels(const char* name) : Scene(name) {} + + void Initialize() + { + const float radius = 0.05f; + + Vec3 offset = Vec3(-0.25f, 6.0f, -0.25f); + + // layers of particles each set to collide with a different shape channel + int numLayers = 8; + + for (int i=0; i < numLayers; ++i) + { + CreateParticleGrid(offset + Vec3(0.0f, 2.0f*i*radius, 0.0f), 10, 1, 10, radius, Vec3(0.0f), 1.0f, false, 0.0f, NvFlexMakePhaseWithChannels(i, eNvFlexPhaseSelfCollide, eNvFlexPhaseShapeChannel0<