顶点法线和面法线

6d468373gw1eqev2qonyjj21hc0u0e05[1]


在3D世界中每一个顶点都有颜色,除了使用光源物体的材质信息之外,还需要知道每个顶点的法向量,根据光照入射方向法向量的夹角,计算顶点的最终颜色.那么我们来了解下顶点法线.

顶点法线: 每一个顶点都有法向量,就能知道光线到达物体表面的入射角.

顶点法线

面法线: 垂直一个平面的直线叫面法线

面法线

一般情况下顶点法线和面法线的方向是相同的,比如一个类是于圆球体和圆的定点法线和面法线方向就不一致,如下图

顶点法线和面法线方向不同的时候


计算顶点的法向量,假设一个三角形由P0,P1,P2顶点组成. 如何计算顶点的法向量N1呢?

N1 = (P0 - P1) 叉乘  (P2 - P1);  是正
N1 = (P1 - P0) 叉乘  (P1 - P2);  是正

image

求出的顶点法线的值并不重要,我们只需要在乎他的方向(正和反),如上图N1是正方向,求出它的反方向就应该是

N1 = (P0 - P1) 叉乘  (P1 - P2);  是反


第二种计算顶点法向量的方式: 如果一个顶点是三个平面的共同顶点,那么通过三个面法线计算出顶点法线

Np = (N0 +N1 + N2)  / 3

image

原文地址:https://www.cnblogs.com/plateFace/p/4970022.html