什么是背面消隐
我们使用三角网格描述物体,在物体被转换到视空间之后,下一步就将被转换到屏幕坐标。
背面消隐指的是删除背向视点(相机的观察点)的多边形。
算法原理
基本的背面消隐算法数学原理很简单:
(1)要求所有的三角形按照统一的方式(顺时针或者逆时针)排列顶点,这很重要,因为关系到平面法向量的计算。
(2)根据三角形的顶点信息计算该三角形的外法向量。
(3)使用观察向量(观察向量是指相机点到三角形某个顶点的向量)测试三角形的外法向量,如果这两个法向量的夹角严格小于90度,那么多边形对于观察者而言是可见的。
简单说明一下(1):
对于该物体,显然面OAB和OBC与ABC对于观察者来说不可见,假设观察向量为view,四个面的法向量计算结果为n1,n2,n3,n4。
(面法向量是由顶点的叉乘计算出来的)
根据我们的算法,应当只有view与n1(OAC的外法向量)严格小于90度,但是如果不规定三角形顶点的存储顺序,那么n1,n2,n3,n4的计算方式就会不统一。又面法向量是由顶点叉乘计算得来的,且叉乘是

背面消隐是图形渲染中的重要步骤,用于消除背向观察者的多边形。算法基于三角形顶点顺序和法向量计算,通过比较观察向量与法向量的夹角来决定多边形的可见性。如果不统一顶点顺序,可能出现错误的消隐结果。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



