Meshlab 的 Shading 选择实际上是做什么的?

What does Shading choice of Meshlab actually do?

在Meshlab v2016.12中,window右边有一个名为"Shading"的选区:

我想知道 "Shading" 的每个选择对 OpenGL 渲染器的实际作用。我的意思是它调用了什么 OpenGL 函数以及传递给该函数的参数是什么?

垂直

  • 照明已启用 - glEnable(GL_LIGHTING)
  • 每个顶点的法线作为顶点属性发送到 GPU。这会强制 GPU 在三角形之间插入法线。结果,您将获得平滑的阴影。

  • 照明已启用 - glEnable(GL_LIGHTING)
  • 每个面的法线作为顶点属性发送到 GPU。这意味着对于每个面,面法线都被复制到所有顶点。这意味着 GPU 最终会在片段中插入相同的法线。结果,你会在脸上得到一个平坦的阴影。

None

  • 照明已禁用 - glDisable(GL_LIGHTING)