随着Directx11的推出,细分曲面在游戏中得到了越来越大的关注。偶一开始觉得是一大堆复杂数学推导的东西,因为导师在中科院的博士几年就是在做细分曲面,听说一个很强的师兄三年也都是在做细分曲面。近来做了几天助教帮忙改作业才偶然看到原来细分曲面也有很简单的算法实现, 比如Catmull-Clark Subdivision算法,其可以对任意拓扑结构的多边形进行细分。下面简要介绍下。
细分新的曲面,先求出新的曲面的顶点:
Face point(位于原来多边形面里的新顶点)
Edge point(在原来的边中点附近的新顶点)
New vertex point (对原来的顶点进行调整得到新顶点)
Face point:
給定一個面