Triangle Tessellation with Clamped Parallelograms
3 days ago
- #Tessellation Algorithms
- #Real-time Rendering
- #Graphics Programming
- Hardware tessellation in Dx11-style originated on Xbox 360 (2005) as a step towards film-quality real-time rendering.
- Dx11 tessellation uses floating-point tessellation factors per triangle edge in [1,64], enabling smooth interpolation without popping.
- The algorithm splits edge tessellation into: splitting edges into segments and splitting the triangle interior accordingly.
- Fractional even tessellation in Dx11 ensures smooth transitions but results in bouncy movement and uneven point distribution.
- Clamped parallelogram tessellation is proposed as an alternative, offering straighter edge loops, less movement, and continuous transitions.
- The clamped parallelogram method allows different tess factors per edge, uses gap matching, and avoids minimum triangle counts.
- Implementation uses precomputed lookup tables (tokens) for efficient reverse topology and barycentric coordinate mapping.
- Compared to other methods like Nanite tessellation (integer factors, pops) and CBTs, clamped parallelogram is popless with float factors.
- The algorithm is implemented in JavaScript/WebGPU with MIT license, focusing on real-time mesh tessellation for deformation use cases.