I am currently trying to reduce the tessellation levels on front facing triangles, but I also want to keep tessellation levels high on edges (so when the view vector is orthogonal to the triangle normal).
Some background information. My terrain system tessellates the terrain and displaces the newly created triangles using the heightfield texture. That means that each triangle edge must always have the same tessellation levels as the other triangles that share the same edge, otherwise holes will be created in the terrain.
I can't find a way to keep the calculations consistent for shared edges.
edit: I have been trying to use non-divergent data by sampling the heightfield to calculate the normal for the edges. That way regardless of the triangle. The edge tessellation levels will always be the same, but I seem to be having issues.