While the method demonstrated here uses a static LOD, it is conceivable that it could be adapted to a support variable LOD through subdivision of quad patches. To do so, the vertex shader would be modified to take input parameters specifying the scaling and translation of the sub-patch to be rendered. For example, to break a quad into four quadrants, the vertex buffer would be rendered four times with a scale of (0.5,0.5) and translations of (0.0,0.0), (0.5,0.0), (0.0,0.5), and (0.5,0.5).
Additionally, provisions would have to be made to prevent seams between quads of differing LOD. One approach would be to generate several different patch meshes that facilitate stitching of patches together along the seams.
Per Vertex Lighting
Dynamic Scene Management
Downloadable demo for this article
Visitors Since 1/1/2000: