I know how to collide objects against a terrain heightfield, or a uniform triangle grid.
But how would I go about implementing collision detection with a terrain as an arbitrary triangle mesh?
For example with a height field you can't have tunnels or any kind of 'depth' to your scene.
One way I can think of is to use some sort of octree and split all the triangles. This should be fast, but for detailed terrain the size would get very big quickly.