voxelinc/voxellancer — pull request #162 by mrzzzrm (2013-12-13 23:22:41+00:00)
Title: Collision Filter

Adds CollisionFilterable as second base-class for WorldObject (yep, that's multiinheritance. see it as great power we are wielding). That holds a collisionfilter-class per object and a bitmask that this object wants to collide with. Additionally there is a virtual specialIsCollidableWith() function objects can reimplement for special behaviour.

Effectively enables:
* Bullets/Particles/Etc can be setup to not collide with each other resulting in better performance
* Bullets(Rocket-support still needs to be implemented) do not collide with their creator resulting in easier positioning on creation.