posted November 25, 1999 03:36 AM
The only backface culling I do at the moment is through OpenGL; I just send all triangles down and let the API and/or hardware not draw the back facing triangles.
I don't take the camera orientation or the angle of the terrain normal into account. It would be more correct to do so, but for the sake of speed I just ignore those bits, and assume the camera is horizontal and the normal is pointing up (as far as the variance test goes). And I do take into account the "variance" or "wedgie thickness" of each triangle, which is pre-computed in an implicit binary tree.
If I was writing an engine with completely static terrain I would definitely try to pre-compute a set of visibility information for various areas of the terrain so that terrain features that are occluded by closer features are not bothered with at all. This would probably be too difficult to recompute in real time with a dynamically modifiable map such as I use in Tread Marks.
-- Seumas McNally, Lead Programmer, Longbow Digital Arts