用户名 密    码

maya材质贴图教程:无锯齿Depth Channel(Z通道)制作方法(3)

来源:互联网 作者:未知 发布时间:2010-08-11 14:55:36 网友评论 0


在Hypershader中建立这些材质节点。

\

使用Connecttion Editor把SamplerInfo的Point Camera属性值输出给DisanceBetween的Point1属性。

\

        把DistanceBetween的Distance属性输出到SetRange的ValueX属性。把SetRange的Min和Max分别设为0和1,Old Min和Old Max分别对应场景中物体离摄像机最近和最远的距离,这个距离值可用DistanceTool来测量。

\

          把SetRange的OutValueX输出到Ramp的vCoord。再把Ramp设为黑白渐变,并把Ramp输出的颜色连接到SurfaceShader的Outcolor上。这样精确计算Depth Channel的Shader就制作出来了。

         现在再来回头看看它的原理,首先,我们从SamplerInfo的Point Camera属性中得到每个像素点在摄像机坐标系下的空间坐标。然后输出到DistanceBetween节点的Point1中,DistanceBetween节点用于计算两个矢量之间的距离,现在我们需要求得摄像机坐标和每个像点坐标之间的距离,由于得到的像素点坐标值是以摄像机坐标为原点的,所以distanceBetweem的Point2值为0即可。再用SetRange把所有的距离值归范为0~1之间。再输出到Ramp贴图上。即最近的值为0,为白色,最远的为1,为黑色。

搜索栏目