Main Point is: 输入: 给出一个初始的原始网格(一般是比较coarse的啦,否则就没有必要进行tessellation了)。过程:微观上,对网格的中每一个面face(可能是triangle or quad),生成一个对应的控制面片,宏观上,这个原始网格就得到一个对应的控制网格了。输出:上面生成的控制网格,要是看做是control points for bezier patches, then 给出参数坐标(u,v)不就对应于bezier patch上的某一个点了吗?整个控制网格得到的整个bezier曲面因此起到逼近approximate一开始作为输入的那个原始网格的效果。难点在于怎么求控制网格/控制点,使得最好的patches直接能smooth, C1/G1。以及跟新的gpu pileline结合起来。
PN Triangles:

实现上本来很简单,但是我之前竟然弄了个很严重的错误,就是先求了原是网格的Loop limit surface再对这求PN。得到的PN triangle应该是interpolate原始网格的。
Reference:A.Vlachos, J.Peters, etc. Curved PN Triangles, 2001.
之后的工作还包括:怎么改善连续性,怎么加入sharp features,怎么扩展到triangle-quads等。详细的内容请google。
Tamy Boubekeur 的主页上继Scalar tagged PN,
QAS, Subdivision Shading, Phong Tessellation之后又有新东西了,
Realtime tessellation, 好像是他在这方面工作的一个总结,期待当中。
update 2009-05-10,
quadratic-approximation-of-subdivision Approximate Subdivision Shading 这篇文章提供了三方面的信息。1. 评论Subdivision Shading工作, 2. 将Subdivision Shading的方法跟下面将要提到的
ACC结合起来,文中没有说得太仔细,但是我估计是在得到ACC的geometry patch之后,再求geometry patch上每一个顶点的normal(其one-ring faces的normals的avarage), 不需要求tangent patch了当然,在对geometry patch做evaluation的时候,同时对其上面的normals也做相同的evaluation。3. to achieve watertight surfaces when using displacement maps。C. Loop & S. Schaefer的Approximation Catmull-Clark Subdivision surfaces with Bicubic Patches[
ACC], 2007/2008. 现在的确比上面提到的PN, QAS都要热,一方面是因为现在DirectX11上新加入的tessellation功能. C. Loop本来就在Ms工作,估计这个ACC工作本来就跟D11的开发相结合的。 相关的连接(1).
Tessellation of Displaced Subdivision Surfaces in DX11 (2).
Siggraph 2008: Next-Generation Rendering of Subdivision Surfaces 。
ACC上面没有考虑到sharp features, 因此有了
Real-time creased Approximatie subdivision surfaces,2009.
10 Fun Things to do with Tessellation Hardware tessellation这个new tool有什么好玩的功能呢? 看看这个文章啦:-)
[Mar 26,09 update]虽然比Nvidia慢,但是ATI/AMD终于就在HW上实现ACC了 "
OpenGL Tessellation Samples", 看来ACC真的太hot了,刚下载了demo来编译运行, 可惜我的RV380(Radeon X600)不支持。另外,因为ACC的实现需要one-ring neighborhood的信息,而在GPU中怎么能看到一个primitive vertex/face的邻域信息呢,并且还是在pipeline的前段,在vertex unpacked之前?
http://www.cise.ufl.edu/research/SurfLab/pubs.shtml 其中一个做细分曲面做得最好的实验室,上面N多好papers。而其中就有1, Smooth surfaces from 4-sided facets 2008; 2. Fast Paralled construction of smooth surfaces for meshes with tri/quad/poly 2008等和就网格生成smooth的Bezier patches并用GPU加速相关的工作。
当然在Tessellation得到bezier patches之后,可以在上面使用normal mapping, displacement mapping等来加添显示效果。
另外这里涉及一个watertightness的问题,怎么样使得相邻的patches之间不出现缝隙,这个倒没有深究。