Advertisement

PN-Triangles和Phong-Blinn是一种用于模拟光线交互的技术

阅读量:

今天遭受了一番网络上的嘲讽和批评;其中的原因在于许多人将自己视为"菜鸟"或初学者时往往容易成为他人的调侃对象。从技术角度来看,在任何资深开发者看来,在指导新手的过程中提出建设性的反馈与建议都是再所难免且必要的行为。

PN-Triangles在每个三角形patch内部涉及7个位置信息及3个法向量信息,并通过这些位置信息来进行二次插值以获得所有细分顶点的位置及法向量信息;相比之下, Phong tessellation则直接将细分后的顶点投影回原始三个顶点,仅需进行线性插值即可得到所需的位置及法向量信息。不仅减少了大量的运算,同时也降低了大量运算的同时也大幅减少了数据传输量(HS到DS的数据传输量从34个浮-point数减少至4个浮-point数)。值得注意的是, Phong tessellation与普通tessellation(暂且称之为Flat tessellation)在两者的HS部分本质上是相同的,只需添加几行代码即可将传统的tessellation升级至Phong tessellation,相较于对PN-Triangles需做大量修改HS、Constants HS以及重新设计数据交换结构等繁琐工作而言,其性价比依然很高

上面这个是国内开源引擎KlayGE中的作者描述,在描述上来看PN-Triangles与Phong-Tesse之间并没有明显的差别,在细分基础上微调生成顶

全部评论 (0)

还没有任何评论哟~