Collision with deforming meshes

Started by
0 comments, last by MaulingMonkey 6 years, 12 months ago

Replaying some of the older games I've started thinking about collision handling. How does one achieve this behaviour?

It seems keeping a player on a deforming mesh would require

1) Doing a line-mesh intersection on the skinned model
2) ...which requires the triangles in the mesh to be spatially partitioned
3) ...which needs to be repartitioned every so often as the mesh deforms, because it may become invalid.

With a low poly count I can see this working, but in today's games where a model like that would have over 50k polygons, this seems less feasible.

What is the general approach to this problem? Are there any papers or articles written on the subject that you can share?

"I would try to find halo source code by bungie best fps engine ever created, u see why call of duty loses speed due to its detail." -- GettingNifty
Advertisement

To recap some points from discord:

  • Low poly meshes are still a thing (you don't use your high poly render mesh for bullet hitboxes or nav meshes either, you use a lower poly equivalent)
  • Tracking your current triangle means you don't need a line-mesh intersection vs the whole mesh every frame (just scan neighboring triangles instead)
  • Cheat and limit what your animators can do, thereby simplifying your options by assuming more - such as having them not flip the model, and thus let you cull the entire stomach mesh, etc.

This topic is closed to new replies.

Advertisement