Download

Use a line trace to simulate collision on non collision mesh

This is a rather tricky problem. I have multiple hierarchical instanced static meshes, each one has over 100,000 instances so running with collision is not an option. However, I need to stop the players spaceship from going through the instances. Has anyone ever been able to simulate collision and prevent no clip without actually running collisions? I need some tips on how this would be implemented with a visibility line trace, I’ve got a general idea but there are some complications e.g. side of the ship/turning while stationary and very close.

Enabling collision when there are 100,000+ instances brings the engine to a halt so the only solution is going to be faking it. I don’t need any restitution or fancy physics just need to stop the player ship from going through. Will a line trace work at incredibly high speed? The ship goes up to 10,000 miles/hour so it needs to slow down from very high speed if it nears an instance.

What you could do instead is cluster the area, and collision is only enabled on the meshes within the same cluster as the player is in. Idk if linetraces would be ideal for this.

I don’t have an answer for you, but whatever it is you are doing sounds awesome!

Any tips on where to start with this? e.g. I have an asteroid belt approximately 5000 kilometers in diameter with 300,000 asteroids in the HISM, when the player ship is within 2000m activate collision via area cluster… how?