5.10.2 背面剔除

网友投稿 288 2022-11-17

5.10.2 背面剔除

三角形具有两个面。我们使用了以下约定区分正反面。如果三角形顶点是有序的v0,v1,v2,然后我们像这样计算三角形法线n:

从法线矢量发射侧是前侧,而另一侧是背侧。图5.30显示了这一点。

我们说一个三角形是前向如果观察者看到一个三角形的前侧,我们说一个三角形背向如果观看者看到一个三角形的背面。从我们的图5.30的角度看,左边的三角形是前向而右三角形背向。此外,从我们的角度来看,左三角形顺时针排序而右三角形逆时针排序。

现在,在3D世界中的大多数对象是封闭的立体物体。假设我们同意以法线方向始终向外指向造三角形。然后,摄像头看不到三角形的背侧,因为一个实体对象的背向三角形被前向三角形遮盖;图5.31(二维)5.32(三维)说明了这种情况。因为前向三角形遮盖背向三角形,绘制它们没有意义。背面剔除是指从管线废弃背向三角形的过程。这可以潜在地减少需要由被处理的一半三角形的量。

默认情况下,Direct3D以三角形顺时针环绕顺序(相对于观看者)为前向,三角形逆时针环绕顺序(相对于观看者)为背向。然而,这一惯例可以用逆转Direct3D的渲染状态设置。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:实例讲解MyBatis如何防止SQL注入
下一篇:利用微控制器进行网络通信的网卡配置
相关文章

 发表评论

暂时没有评论,来抢沙发吧~