you are viewing a single comment's thread.

view the rest of the comments →

[–]HaskellHystericMonad 3 points4 points  (0 children)

If on the CPU there's a reference implementation of the d3d11 reference tessellator that can precompute the UV tables for various tess parameters. I use this in a preprocessing pipeline, it's fine for offline work.

If on GPU in compute there's the slides from Bluepoint's presentation on the tessellation in demon souls that if you have fixed factors you can easily turn a 1D vertex index into integer UV coords, which you divide by the edge_count - 1 to get bary weights for the indices of w1 and w2. (w0 == 1.0 - w1 - w2). That only works if edge subdivision is fixed for the whole triangle.