查看: 1351|回复: 0
打印 上一主题 下一主题

Maya保利博纳片头琉璃质感

[复制链接]

9210

主题

1

听众

5万

积分

内部人员

Rank: 7Rank: 7Rank: 7

纳金币
12582
精华
186

活跃会员

跳转到指定楼层
楼主
发表于 2013-10-24 16:18:19 |只看该作者 |倒序浏览
161540064L5.jpg


        教程思路:
        1. 石头材质
        2. 琉璃材质

        石头材质
        与以往项目不同的是,这个片头不是在电视,而是在影院播放的,所以要求片子渲染精度达到2K。
        原始模型是用Polygon方式建立的。如图(01)。


161542393A5.jpg



        大家知道,通常多边形模型在赋材质前都要进行分UV的操作,UV分得不仔细就会造成贴图的拉伸。不过,像上图这样的模型恐怕没有人会愿意去给它分UV。而且,此次不止渲染尺寸大,镜头距模型也非常近。在这样的情况下,任何一点点的拉伸都会严重影响渲染的真实感。在这种情况下,似乎只有一种方案:使用3D程序纹理。3D程序纹理的特性是不依赖分UV就可以在模型上产生没有任何拉伸的纹理。同时,它的缺点也很明显:在某种意义上不够真实。那么,怎样才能使它看起来更真实一些呢。一个办法是建立多个不同的3D程序纹理,然后用layeredTexture将它们叠加在一起混合。在这个石头的材质中,我用了两个3D程序纹理:solidFractal和cloud。另外,为了使整体的渲染效果多一些变化,我还对材质做了一些局部的做旧.关于做旧这个话题,我在2004年2月的《CG杂志》上有过一篇文章专门讨论过。方法略有不同,但思路一样。见图(02)


1615431cD4.jpg

        首先我先在正视图渲染了一张场景的GI图片。这里说GI不太准确,其实是ambient occlusion,或简称AO。具体如何生成这张图,很多方法,比如用maya自带的mental ray;用新推出的MAYA外挂渲染器turtle。甚至大家常用的GI_Joe等等都可以。具体我这里用的是turtle(只是生成这张图时用的turtle,最后渲染依然是MAYA默认的渲染器)。生成此图时,我的参数开得不够高,一方面是考虑到速度会快一点。另一方面,参数开得不够高会导致算出来的图会有一些斑点污迹(见图02下半部分)。而这种污迹在这里其实正是求之不得的。如果太平滑了,反而会使效果缺乏真实感了。一举两得。那么,生成的这张图有什么具体用处呢? 用来做遮罩!
        下面用一个简单的场景来说明它的用法。图(03)所示,就是这个简单场景的默认渲染。


16154345H41.jpg



        首先,按照前面所述,在正视图渲染一张AO图。如图(04)


1615440449A.jpg

        建立一个layeredTexture(层贴图),并连接到材质的Color属性.点击建立两个空层,分别改变它们的颜色为红色和绿色。如图(05)。


1615442a345.jpg



        将刚才渲染的AO,贴在绿色层的Alpha属性上。注意,贴图的方式要选则投影方式,并且在方向上要与模型对整齐。渲染。效果如图(06)


161544511A4.jpg

        现在,你已经看到效果了。我所做的其实就是用这张纹理做为红色层与绿色层的一个遮罩。那么,按照这个思路,只要分别把绿色与红色贴上相应的纹理,那么我们所要的效果也就出来了。图07是石头材质的节点网。


1615451G342.jpg



        图08为完成的渲染图,图09为原始的1:1尺寸时的局部截图。大家可以清楚看到其中的细节。


1615453U3B.jpg

1615455Y004.jpg


        琉璃材质
        通过观察及查找一些图片资料,基本上可以通过两层材质来制作琉璃,低层的瓦,和表层的釉。这看起来有些类似于通常制作车漆的方法。 我用了layeredShader(层材质),注意它与前面所用到的layeredTexture(层贴图)是不同的。底层的瓦用了lambert材质来表现。表层的釉使用了Blinn材质,由于这一层是透明的,所以将材质的Transparency值打得很高,几乎完全透明。只取它的高光和反射。用图更容易看得明白。如图10




16154632X39.jpg

        值得注意的是,无论是上面的石头材质还是琉璃材质,在它们的节点网中都出现了一个小组合,我想有必要对其简单介绍一下,以使大家能更清晰的了解这两个材质节点网。
如果将这个小组合抽离出来,并简化成最简单的状态,则如图11所示。


16154A13G1.jpg



        samplerInfo:是MAYA材质系统中最常用的节点了,几乎每一个材质都会用到它。
        surfaceLuminance:可能不如samplerInfo用得多,但也非常有用。
        multiplyDivide:在这里的作用是将samplerInfo与surfaceLuminance的效果结合到一起。
        ramp:再常用不过的程序纹理!
        用文字描述可能很麻烦,所以我做了下面这张图。如图12


16154G62147.jpg

        第一种效果在很多MAYA的教材中都有介绍,它利用samplerInfo节点的特性来制作类似X光的效果。
        第二种效果有点儿不一样,surfaceLuminance节点的作用是依照灯光方向的不同而产生变化。
        第三种是通过一个multiplyDivide节点来结合两种效果。上边的石头材质和琉璃材质都用到了这个组合。当然,这里列出的是最简化的连接方法,比如你还可以在中间加入clamp节点来限制输出值的范围。这样,当场景中灯光的亮度值超过1时,也不会出现不正常的现象。琉璃最终效果!


16154IXZ4.jpg


分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-9-20 13:37 , Processed in 0.094753 second(s), 34 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部