So we’ve been experimenting with CPU mesh data particles and collisions.
The particle system (constantly emitting) is attached to a moving actor that travels a great distance over a mesh/terrain surface. All the time, the emitter is spawning mesh based particles that collide with said surface.
Three things happen:
- The emitted particles collide and settle on the surface.
- The emitted particles that settled gradually disappear (time interval 3 -5 seconds).
- The emitted particles that go through the surface are killed.
Now, the confusing part:
As soon as the particle system starts traveling with the actor it reaches a point where collision is dropped. This area is increased by increasing the “Max Collision Distance”.
Since this parameter is under the “performance tab”, naturally we are concerned by any performance hit if this parameter is increased.
So we speculated that turning the particle on and off would reset the “Max distance” anyway and we need not increase it for the sake of staying “safe” performance wise.
However Turning on and off “spawning” and “collision” at different intervals of the actor’s journey over the mesh surface did not exactly reset the collision starting point nor is it an ideal for us to do so.
It seems the collision area is fixed regardless of whether the emitter is moving or not. It always takes the starting point of the particle system as the point of reference for “Max Collision Distance”.
Is our understanding for “Max Collision Distance” correct?
If so, is there a way a type of “collision area or radius” can follow the particle system instead of start from its spawning point? Is there any way around it?
Or should we not worry about it and set this to a great scale from level start (in our case large levels with large terrains) but we are skeptical about this approach.
Any light shed on this matter would be much appreciated!