Flat shading 

每个三角面是同一个色

shading着色方法_权重

Gouraud shading

求出每个顶点的法线,每个顶点做一次着色,每个像素的颜色通过顶点差值算出来

shading着色方法_权重_02

Phong shading

对每个像素做法线,逐像素进行一次着色

shading着色方法_权重_03

由下图可知,不同条件下,逐面不一定比逐像素要差,逐像素也不一定比逐面计算量要少

shading着色方法_权重_04

顶点的法线该如何定义呢

定义逐顶点的法线

方法是所有共用顶点的面的法线的平均值即为顶点的法线,无论是简单平均还是加权平均(比如根据不同面的面积设置权重),都是目前采用的方法

shading着色方法_权重_05