Firefly wrote:1. Optionally collide with the world
2. Don't have physical reaction to players colliding into them (much like the trigger volumes)
3. Players can walk into them and "trigger" a Touch event
for that you need a material filter because the body is not a trigger and it is not a body.
It is a trigger for other bodies and it is a body for the world.
Using the old method of 1.53 you will need to make a trigger material, a world material and a body material, then
set connection Trigger-World to be normal collidable
set connection Trigger-Body material to be normal collidable by setting a contact callback that reject all contacts
set connection body Material-world Material to normal collision
that was the method in 1.53 and it is expensive, with 2.0 is a little different, but more efficient
make only two material world and body material.
make the trigger body and set his collision shape to trigger volume, also make the body infinite mass .
asign the Body Material to trigger volume,
Now if a body interest the trigger volume body will receive a callback but no contact will be calculated.
If you need to move the trigger volume you can set it matrix after the simulation loop or on any of the callback.
In the black Hole demo I use that trick,
I made a big trigger object and I set the matrix to the matrix of a smaller body that is the start inside,
that is just one technique you can use any method you want.
2.0 supports both methods, just the one is more efficient that the other.
if you want trigger that are invisible to some object and not to others then the only way is by using the first method and use callback filter,
It is the more powerful the trigger method is a simpler special case that is used by commercial engines,
and since its is perceived as an advance feature of commercial engine I added but in reality is nothing but a special case of the Material we already had in 1.53 and still have in 2.0
Note:
BTW teh demo is very cool. is that the player controller on the SDK, or your own?