Graphics 如何在POV光线中进行phong着色
我正在使用POV光线跟踪器进行渲染。我有一个三角形网格,当我使用以下方式渲染时: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>, <
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光线中进行平滑着色
注意:共享公共顶点的三角形在这些顶点将具有相同的法线三角形的角是
顶点
。签出答案,显示如何计算给定修剪的顶点法线。只想补充一点,这通常是在进入“着色器”阶段之前预先计算的。因此,每个顶点都知道其法线在顶点着色器中是什么,通过扩展,每个像素都知道像素着色器中的每像素法线是什么。