Graphics 如何在POV光线中进行phong着色

Graphics 如何在POV光线中进行phong着色,graphics,render,povray,pixel-shading,Graphics,Render,Povray,Pixel Shading,我正在使用POV光线跟踪器进行渲染。我有一个三角形网格,当我使用以下方式渲染时: mesh { triangle { < corner_1>, <corner_2>, <corner_3> } } 网格 { 三角形 { , } } 我没有获得平滑着色,POV光线中还提供了平滑着色,它使用: smooth_triangle { <Corner_1>, <Normal_1>, <

我正在使用POV光线跟踪器进行渲染。我有一个三角形网格,当我使用以下方式渲染时:

 mesh
{
    triangle
   {
           < corner_1>, <corner_2>, <corner_3>
   }

}
网格
{
三角形
{
,
}
}
我没有获得平滑着色,POV光线中还提供了平滑着色,它使用:

smooth_triangle
{
    <Corner_1>, <Normal_1>, <Corner_2>,
    <Normal_2>, <Corner_3>, <Normal_3>
    [OBJECT_MODIFIER...]
}
平滑_三角形
{
, ,
, 
[对象修饰符…]
}
但问题是它需要三角形角的法线(它使用phong着色),如何计算三角形角的法线?如何在POV光线中进行平滑着色


注意:共享公共顶点的三角形在这些顶点将具有相同的法线

三角形的角是
顶点
。签出答案,显示如何计算给定修剪的顶点法线。只想补充一点,这通常是在进入“着色器”阶段之前预先计算的。因此,每个顶点都知道其法线在
顶点着色器中是什么,通过扩展,每个像素都知道
像素着色器中的每像素法线是什么。