加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Arnold Displacement使用教程&经验分享

(2012-08-25 02:13:14)
标签:

arnold

mentalray

渲染

置换

杂谈

分类: 原创

 

http://s12/middle/760e11a9tc8065907546b&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />


 

Arnold的置换性能比mr要好很多,使用方法与maya自带渲染器使用置换的方法类似,但为了得到正确的置换有几个地方需要留意。

 

操作步骤:


1、选择与物体相关的材质shading group节点,如图1:

http://s1/middle/760e11a9tc806681a9a30&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图1

 

2、使用一个noise来作为displacement的贴图来源,默认连接应该如下图2:http://s12/middle/760e11a9tc8066b604fdb&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />
图2

 

3、此时显示的置换效果有问题,像一个方盒子,原因是因为默认的置换效果被bounding box给约束住了,如图3(右边是默认置换后的效果)
http://s12/middle/760e11a9tc8066f7bfccb&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />
图3

 

4、选择displacementShader,将bounds Padding(置换边界盒扩展)设置为2,点渲染,如图4。Bounds Padding参数同样存在于模型的shape节点的Arnold选项卡下,作用是一样的,经实测,Arnold渲染器在渲染时会采用两个Bounds Padding中的较大值来决定边界盒扩展究竟是多少(mtoa_user_guide.pdf中的说法是错误的)。
http://s13/middle/760e11a9tc80673093c5c&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图4

 

5、置换的细节仍然太少,问题出在模型本身面数太少。慢着,Arnold中使用置换的最好方法并不是无限的增加原始模型的面数,而是通过Arnold自己的subdivision去实现“渲染时细分”,来增加模型面数,进而提升置换的细节。不得不说,Arnold的细分是非常好用的。本文中将Subdivision Iterations设置为6,也就相当于在渲染时把模型smooth 6次。如图5:
http://s11/middle/760e11a9t7a670bb8bfba&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图5(文字看不清请点击图片放大)

 

6、置换的强度有点儿大,让我们把置换强度调整一下,置换强度在Arnold由两个参数相乘确定,一个是displacementShader下的Scale,一个是模型shape节点下Arnold选项卡下的Height,如图6。记住两者相乘得到最终的置换强度值。
http://s4/middle/760e11a9tc8067b521863&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图6

 

7、将displacementShader下的Scale设置为0.5,置换强度小了一半,效果好多了,如图7:
http://s15/middle/760e11a9tc8067cee20fe&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图7

 

8、将noise节点的Depth Max设置为12,并提升渲染品质设置,渲染结果如下图8:

http://s15/middle/760e11a9t7a670cf6b0ee&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />
图8


9、以上步骤就是Arnold for Maya的置换设置步骤以及关键参数。以下是一些测试图:
http://s16/middle/760e11a9tc80686b3f29f&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图9:陨石

 

http://s16/middle/760e11a9t7a670dc784df&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图10:陨石_motionblur

 

http://s7/middle/760e11a9tc8068ae359f6&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图11:Displacement_AO

 


10、displacement的基本制作步骤算是完了,不过有两个参数需要额外留意:

Auto Bump:该参数存在于displacementShader和物体的shape节点的arnold选项卡下,两个auto bump只要有一个勾选了,该物体就会启用auto bump。Auto bump作用是把置换贴图上的高频细节(当前置换精度无法表现的细节)提取出来作为bump添加给置换后的模型。本文以上部分的测试图之所以会有如此高的细节,有大部分原因来自于启用了auto bump。下图12、13是开启与不开的对比:
http://s14/middle/760e11a9tc8068c95115d&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" /> 图12

 

http://s9/middle/760e11a9tc806a390cfb8&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图13

 

从图12-13能看出,auto bump对细节的提升作用很大,缺点是会增加渲染时间


Subdivision Pixel Error:该参数控制细分优化程度(减面强度),该参数值越大,面数优化越多,置换细节相应会降低,渲染时间相应减少,针对不开启Auto bump的情况下作用尤为明显,如下图14:http://s2/middle/760e11a9tc806a63bd801&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />图14

 

如果要做动画的话,Subdivision Pixel Error建议不要高于1,否则在镜头机位远近变化的时候容易出现模型精度突然改变的情况。动画序列就不放出了,网上视频压的啥也看不清。

 

最后附上置换在不同采样设置下的质量/渲染时间消耗/内存占用:

http://s2/middle/760e11a9tc806ac818971&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />AA=2


http://s15/middle/760e11a9tc806ac8d64de&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" /> AA=4

 

http://s15/middle/760e11a9tc806b6fbadce&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />
AA=8

 

http://s4/middle/760e11a9tc806ac9fbe03&690Displacement使用教程&经验分享" TITLE="Arnold Displacement使用教程&经验分享" />AA=16



 


 

 

-------全文完-------


 

后续可能会有更多的Arnold评测&教程文章放出,欢迎关注本博:)

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有