This paper presents an optimisation of the existing shadow volume algorithm using a polygonal mesh refinement data structure known as the merge tree. The merge tree is combined with a custom visibility function to generate a mesh refinement known as a silhouette level-of-detail (SLOD). The SLOD retains all original mesh detail in the region of the silhouette and coarsely approximates the mesh elsewhere. Using a SLOD accelerates the creation of shadow volumes in two ways. Firstly, a SLOD contains fewer edges than the original mesh, reducing the time required to find correct silhouette edges. Secondly, a shadow volume produced from a SLOD contains less geometry than a shadow volume produced from the original mesh, hence it may be rendered more quickly.
展开▼