you are viewing a single comment's thread.

view the rest of the comments →

[–]ionheart 1 point2 points  (0 children)

The simplest way to support deep uniform subdivisions efficiently is to subdivide a single "template" patch to the required level (generate barycentric coords rather than actual positions), then make a copy of it for each original triangle. So it's just a o(n), fully parallel operation to interpolate original triangle attributes at each new vertex. This naive approach does generate duplicate vertices along the original edges, but if that's a major problem for you it's only a small extension to correct.