Particles can be selectively configured to collide with any PhysX object. Depending on our requirement, we can ignore the collision of particles with a particular type of actor, whether they are static or dynamic. This can be done to avoid unnecessary performance overhead or to avoid undesired collisions.
For enabling particle-based collision filtering, the
PxParticleBase::setSimulationFilterData() function is called. This requires a parameter of the
PxFilterData type, which is a user-definable data that gets passed into the collision filtering shader and/or call-back.