主页 > 学习生活 > 技术交流 >

浅析3Delight插件渲染shave毛发

时间:2014-01-17 10:37来源:未知 作者:admin 点击:
3Delight 是一个专有的,符合RenderMan渲染规范的照片级真实度渲染器,和皮克斯PRMan有一样高的渲染质量和效率,由Taarna工作室的子公司DNA Research开发。             特性
    3Delight主要使用REYES渲染算法,但也支持光线追踪和全局光照渲染,完全支持多线程和分布式渲染,因此可以有效利用计算机的多核处理器,以及拥有众多计算机的渲染农场的计算资源进行渲染。
3Delight实现了RenderMan规范所必备的特性,并有以下特性:
 可编程着色,使用RSL编写着色器
 面光源
 景深
 置换
 环境贴图
 全局光照
 细节层次
 运动模糊
 特殊镜头映射(通过“ray trace hider”)
 光线跟踪
 深度阴影
 实体模型
 纹理映射
 体积着色
此外,3Delight还支持以下特性:
 光子映射
 点云
 多级细分面
 NURBS曲线
 砖图(三维Mipmap纹理)
 RIB判决,允许仅在满足特定条件下才解析指定的RIB片段。[2]
 类着色器
 Co-shaders
    模块化
    3Delight是模块化的,其主模块实现了REYES渲染算法。其他的模块,被称为“Sabretooth”,通过shaderop,用于光线跟踪和全局光照计算。 通过选择不同的hider,明确指定进行光线跟踪渲染,使之从一个REYES/光线跟踪杂交的渲染器变成完全的光线跟踪渲染器。
    其他的特性包括:
 扩展的显示子集(display subset),以允许渲染出来的几何原型写入相同的显示变量(display variable),并写到不同的图像里。比如,使用显示子集,可以把一个动物的皮肤和毛发渲染成分开的图像,并且毛发通道(pass)不会遮挡皮肤通道。
 快速高效的点云,存储砖图和点云的数据结构被设计成仅在必要的时候加载所需的部分,这样可以尽量减少渲染所需的内存。
 程序化几何模型在光线跟踪也是按需生成,尽量减少渲染所需的内存。
 置换着色器可以嵌套。
 置换着色器可在模型着色前对几何原型的顶点进行运算。
 gather() shaderop可用于产生点云,以从HDR图像生成取样分布,如此可以方便的把光子映射和图像照明结合起来。
 磁盘读写缓存,在大场景渲染时优化大量数据传输,减少网络阻塞。
 一个允许对任何数据运行RSL代码的C语言API,比如,在一个建模软件里。
    支持的平台
    3Delight既有32位平台也有64位平台版本,目前支持的平台主要有
 苹果公司PowerPC和x86平台上的Mac OS X
 x86,x86-64和Cell平台上的GNU/Linux
 微软公司x86和x86-64平台上的Windows
    使用3Delight的影片
 Assault on Precinct 13
 Bailey's Billions
 黑色圣诞
 荣誉之刃
 血钻
 夏洛特的网
 长江七号
 纳尼亚传奇:狮子•女巫•魔衣橱
 The Chronicles of Riddick
 Cube Zero
 第九区
 神奇四侠
 神奇四侠:银魔现身
 死神来了3
 哈利•波特与“混血王子”
 哈利•波特与凤凰社
 绿巨人
 神奇绿巨人
 The Last Mimzy
 The Ruins
 The Seeker: The Dark is Rising
 终结者之救赎
 超人归来
 野兽冒险乐园
 The Woods
 X战警3:最后之战
 X战警前传:金刚狼
    以下全CG电影使用了3Delight:
 Adventures in Animation (IMAX 3D featurette)
 Free Jimmy
安装
    http://www.3delight.com/en/这是3Delight的官方网站。我们可以在里面下载到我们需要的版本,这里我下载的是Windows 64-bit 版本的,我的maya2011是64位的,直接安装后可以使用。在插件管理器中勾上3delight_for_maya2011.mll和3dfm_shave2011.mll。

 
     这时候菜单里会出现3delight的菜单项

 
OK,我们可以使用了。
使用
1.创建毛发+物体+灯光
我们在maya里创建一个简单场景,一个Polygons的小球,上面生长了shave默认的blond毛发,只打一盏聚光灯照射,调整一下位置,并且设置灯光的Cone Angle为42左右,Penumbra Angle为20,打开灯光的阴影设置,在灯光的属性下面打开Shadow--->Depth Map Shadow Attributes,将使用深度阴影贴图Use Depth Map Shadow选项勾上,分辨率暂时我们不动,还是原始的Resolution=512,用默认的设置。
Software渲染结果如下:

 
如果直接将渲染器打为3delight,渲染……
 
我们会发现和我们预期的很不一样,而且毛色,毛的阴影什么的都没有渲染出来,这么看来,3Delight 不可以直接去用的,需要进行一些自身的设置才可以渲染出来。那么我们来设置一下。
   
2.分别选择物体毛发和灯光,分别做设置Set
选择shaveHair节点,执行Create--->sets--->Set,并且命名为obj,便于管理,选择spotLight节点,执行Create--->sets--->Set,并且命名为lig。
3.分别给物体毛发和灯光添加节点并且做链接
现在选择obj,执行3Delight--->Assignment Panel,

  
会跳出一个窗口3Delight Assignment,如下:
 
点击Attribs后面的棋盘格,
 
会出现新的属性,
 
再点击棋盘格后面的AE,会跳出一个属性窗口,点击里面的Add/Remove Attributes,
 
    选择spotLight节点,执行3Delight--->Assignment Panel,会跳出一个窗口3Delight Assignment,如下:
 
之后弹出一个窗口,将所有属性打勾,

 
打开Shadow Maps的属性栏,勾上Generate Shadow Maps,让阴影的分辨率与灯光的设置保持一致,Shadow Map Resolution=512、512,并且将灯光的贴图类型Shadow Map Type改为深度贴图deep。
 
之后在Shadow Objects的属性栏下,将Object Set设为shave的组obj
 4.给毛发附加材质
    选择shaveHair节点,执行3Delight--->Assignment Panel,同样会跳出一个窗口3Delight Assignment,如下:

然后点击surface后边的棋盘格,

 
在接下来弹出的窗口3Delight Shader Selector中,选择shave材质,

 
这时,Surface后面就会变成Shave的材质了。
 

打开3Delight--->3Delight Relationship Editor ,会出现一个类似我们maya中动力学编辑器的一个3Delight的专用编辑器,

 
在编辑器中将毛发与材质相关联,在右边的属性节点中有Show和Create,其中Show中可以显示或者隐藏一些属性,比如文件里如果很多属性节点我们可以把暂时不用的隐藏掉,这里我因为勾掉了Geometry Attributes Nodes和Light Attributes Nodes,所以不显示。关联两个属性的时候,选中就可以了。
 
现在可以尝试渲染一下了: 当然,如果你要修改一些属性的话,直接在大纲里选到,然后Ctrl+A是得不到属性窗口的,因为这个Ctrl+A仅仅是适用于maya的节点,想找到3Delight的节点属性,我们可以在打开编辑器后,选中物体,在他的属性节点位置右击,点击Show AE,这样,你才可以真正打开3Delight的属性窗口,可以进行参数的修改。
 
(责任编辑:admin)
------分隔线----------------------------

相关文章