下一步是将折射限定(Refraction Limit)设为10。10?为什么要设成10呢?因为这是允许光线发生折射次数的最大数值。举一个例子,如果折射限定为10,就意味着,物体表面只能折射已被反射或折射(或者两者都有)过9次或9次以下的光线,而对于已被反射或折射(或者两者都有)过10次或10次以上的光线就不折射了。然而在大多数情况下,镜子的折射限定至少是5,玻璃的至少是9。

好了,下面将反射限定(Reflection limit)设为5到6之间,那么,什么是反射限定?为什么要把它设为5到6之间呢?(图6)

反射限定是允许光线发生反射的最大数值。例如,如果反射限定为4,也就是说,物体表面只能反射已被反射过3次或3次以下的光线,而对于已被反射过4次或4次以上的光线就不反射了。

Maya教程:如何创建盛放液体的玻璃器皿材质,PS教程,
图6

主玻璃物体的材质

好,现在我们就开始主玻璃物体的材质的工作,我们需要用于透明的ramp,采样工具(samplerInfo),用于反射的ramp,以及用于产生随机反射图案的贴图。File是指带有随机图案的TGA格式的文件。(图7)

Maya教程:如何创建盛放液体的玻璃器皿材质,PS教程,
(图7 点击小图看大图)

Ramp1的作用:从samplerInfo1获得表面上与摄影机法线方向相对应的每个点的facingRatio值(范围是0至1之间),将此值与Ramp1(类型(Type)为V Ramp)的vCoord相连接,这样每个facingRatio值就对应了一个Ramp1中的Selected Position值,通过调整Selected Position所对应的颜色,就可以使每个表面上与摄影机法线方向相对应的点有一个确定的颜色值。而Ramp1又与透明度相连接,所以,就可以通过调整 Ramp1的Selected Position及其相对应的颜色,来控制表面上与摄影机法线方向相对应的每个点的透明度。(图8)

Maya教程:如何创建盛放液体的玻璃器皿材质,PS教程,
图8

假设表面上的某一点通过samplerInfo1的采样得到了一个facingRatio值为0.003(这个点的法线应该是与摄影机的方向几乎垂直(比如摄影机视图中一个球体边缘上的点)),Ramp1中的Selected Position为0.005的位置的颜色是R 0.137/G 0.137/B 0.137,而0.005以下的位置其颜色均为R 0.137/G 0.137/B 0.137,所以表面上这个点的透明度为R 0.137/G 0.137/B 0.137。以此类推,表面上facingRatio值越大的点(即法线与摄影机方向越接近平行的点),其透明度越接近白色。当点的 facingRatio值大于等于0.61后,其透明度就为白色(因为上图的白色的标记点的Selected Position为0.61)。

place2dTexture与Ramp1相连接,为最终的透明度(transparency)过滤表面的UV方向。

Ramp2 的作用:同Ramp1类似,只是连接到材质的反射率上。

EnvChrome1的作用:用来给Blinn材质反射增加格状反射环境,如果你愿意,你也可以使用EnvShpere。

注意:如果你想得到更柔和反光,你也可以使用Phong,在这个例子里,我使用了有尖锐反射的Blinn。

反射体的材质

下一步,我们需要一个主玻璃材质的副本来为内反射面新建一个材质,对于这个内表面反射体的材质,你可以将Specular Color上连接的贴图节点(file3)断开,用一个单独的颜色替代(在这里我使用了亮橙色)。(图9)

Maya教程:如何创建盛放液体的玻璃器皿材质,PS教程,
图9

这样我们就有了3个材质:主玻璃材质,内反射面材质和液体材质。

好了,正如我在教程一开始就说的,这个盛着有色液体或者水的光亮的玻璃瓶包括3个反射区域,因此建模时也就包括3个表面:

紫色=外表面

白色=内表面为

绿色=液体表面

重要的是:要在物体的属性编辑器中的Render Stats项里将玻璃内表面和水表面的Cast Shadows和Receive Shadows关掉,因为它们只会接收或产生反射和折射。(图10)

Maya教程:如何创建盛放液体的玻璃器皿材质,PS教程,

小技巧:
1.在给玻璃瓶和液体建模时,可以复制一份主玻璃物体,并使用Isoparm(分离(Detach)表面)来创建液体,然后使用Planar制作液体的上表面。

2.你可以使用Layered Shader或者单独的透明材质来制作香水标志。

3.在玻璃瓶的周围放置更多东西以增强反射和折射效果。

现在指定材质
外表面使用主玻璃材质
内表面使用反射体材质
液体/水表面使用液体材质

最后在渲染之前检查一下:确保在Render Globals中打开Raytracing模式,然后将Quality设置为Production Quality。(图11)

Maya教程:如何创建盛放液体的玻璃器皿材质,PS教程,
图11