分享

(1)Maya用Mentalray渲染透明贴图的经验(一)

 張高遠 2016-03-24
 前段时间做了一个视频,画面中的一些logo,采用了贴图加透明通道的方式来建立。在使用Mentalray渲染的时候出现了一些问题。
 
问题一:透明部分显示背景
透明部分显示背景,把背景上原本隐藏的环境渲染了出来,仿佛产生了反射效果,如下图所示。背景上我采用了一个环境球,并让它可以反射但渲染不可见。但是如果用maya的software 渲染是正常的。

Maya用Mentalray渲染透明贴图的经验(一)Maya用Mentalray渲染透明贴图的经验(一)
 
解决方法
在物体的形状节点上,关掉mental ray一栏中的Transmit Transparency属性。这样在mentalray渲染的时候,在透明的物体背后的物体将不可见。在maya的帮助文档里这样解释的,“Transmit Transparency:Uncheck this option so that the object is not be visible if behind a transparent object.”
 
 
Maya用Mentalray渲染透明贴图的经验(一)
 
问题二:透明通道贴图失效
当材质上用一张黑白图像做透明贴图时,mentalray渲染的时候没有透明效果。如下图所示
 
Maya用Mentalray渲染透明贴图的经验(一)

解决方法
将透明贴图节点和材质节点间的连接,由outTransparency到transparency,改为从outColor到transparency的连接,并将图片的颜色翻转,如下所示图。Maya用Mentalray渲染透明贴图的经验(一) Maya用Mentalray渲染透明贴图的经验(一)
分析一下,产生问题的原因是在直接将file拖动到材质的transparency属性的时候,maya自动建立了outTransparency到transparency的连接。而贴图本身是一张黑白的jpg图片,并没有Alpha通道来定义transparency属性,这样mentalray就不可能得到正确的透明。所以改为outColor到transparency属性。
 
为什么不是黑透白不透
 
为什么不直接采用图片的颜色,产生黑透白不透的效果,还要将颜色翻转呢?因为在maya的材质中采用的transparency属性,是指的“透明度”,而在photoshop等软件中采用的是opacity指的是“不透明度”,正好是相反的,所以要翻转一下。
也就是说,在file节点输出的“alpha”和“outTransparency”两个属性恰恰是相反的,为了方便大家的习惯,maya自动将“alpha”翻转,生成“outTransparency”属性。
在一般的情况下,采用贴图的alpha通道来定义材质的透明,在连接到材质时,maya自动采用的是“outTransparency”和“transparency”属性间的连接,这样就避免了“透明度”和“不透明度”间的转换的麻烦。这样就保持我们平常的“黑透白不透”的习惯,所以我们并没有感觉到其中的差异。
但是这次,用颜色来控制透明,在mentalray看来,file节点并没有提供正确的“outTransparency”属性,所以现在必须手动去将颜色翻转,才能得到正确的“透明度”。
 
这一点转来转去有点纠结,希望在这里能把这个中间的问题讲清楚 。
 
再给高光颜色上贴图
最后再将黑白图像复制一张,取消翻转,将图像贴到高光颜色(specularColor)属性上。效果如下图所示。
Maya用Mentalray渲染透明贴图的经验(一)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多