Tuesday, August 21, 2012

GPU Terrain Physics - GameDev.net

I don't have a direct answer, but some food for thought:

It's been standard practice forever for physics and graphics to use different representations of the world, with different levels of detail.
E.g. in a car racing game, the renderer might have a mesh of 100k triangles per car, but physics just has half a dozen simple convex-polytopes per car.

You've also got to consider that object physics may be dictated by some graphic-less server, but will be viewed by two different clients -- one with uber-detail mode with 1M triangles for the terrain, and one with low-detail mode with 10k triangles for the terrain. In that case, the server can't generate a result that looks perfect for both clients, so it's got to make some kind of trade-off, such as using the medium-detail terrain mesh for physics.

If this is the case, where physics and graphics are necessarily somewhat out of sync, then there's a few tricks that can be done on the graphics side to patch up obvious problems. E.g. after being told where a humanoid is standing, the graphics could trace rays down from the characters feet against it's actual (current LOD) terrain mesh, and then use IK to properly anchor the character to the ground on the client-side.

No comments:

Post a Comment