焦散
三维软件中的名词
焦散是指当光线穿过一个透明物体时,由于对象表面的不平整,使得光线折射并没有平行发生,出现漫折射,投影表面出现光子分散。
基本信息
比如,一束光照射一个透明的玻璃球,由于球体的表面是弧形的,那么在球体后的投影表面上就会出现光线明暗偏移,这就是“焦散”。焦散的强度与对象的透明度和对象与投影表面的距离、光线本身的强度有关。
焦散是三维软件中的一个名词,它主要在后期渲染的时候,才会被提及。它的主要作用就是产生水波纹的光影效果,为了达到真实的效果,它可以计算很精致、准确的光影。但是好的效果,都是要付出渲染时间的,它的渲染是很费时间的。
焦散被用于很多渲染插件中,几种主流渲染插件中都会发现它的身影。其中在MENTAL RAY中表现的突出。无论是建筑方面还是动画、游戏的渲染过程中都起了重要的作用。它可以模仿真实的钻石、玛瑙等贵重物品的成色。
VRay表现也很不错,有焦散之王的美誉。
VRay是业界最受欢迎的渲染引擎。基于V-Ray 内核开发的有VRay for 3ds max、Maya、Sketchup、Rhino等诸多版本,为不同领域的优秀3D建模软件提供了高质量的图片和动画渲染
焦散是一种很容易识别的间接照明效果。焦散的产生原理其实很简单:间接照明光线(即光子)从光源发射出来后,先经过一次(或多次) Specular 表面反、折射作用,再投射到某个Diffuse表面上,最后以Diffuse的形式被摄影机 记录 。此过程中的Specular表面被称为 焦散投射物体 ,Diffuse表面称为 焦散接收物体 。
---------------------------------------------------------------------------
必备条件
* Window - Rendering Editors - Render Settings窗口 - Indirect Lighting标签 - Caustics部分中的Caustics选项必须打开。
* 光源形节点属性编辑器 - mental ray - Caustic and Global Illmination部分中的Emit Photons选项必须打开,激活光子发射功能;并利用Photon Color 和Photon Intensity两个属性为光子设定恰当的能量值。注意,要实现物理学精确渲染,光源的直接照明必须与光子能量一样,按 距离平方的反比 的形式进行衰减。(建议使用符合物理学精度的直接照明灯光Shader ,比如physical_light,并让灯光Shader中的直接照明能量与光子能量值保持相等。)
* 必须在 焦散投射物体 及 焦散接收物体 的材质定义中指定 Photon Shader。(在材质组属性编辑器 - mental ray - Custom Shaders部分中)。光子的反射、投射、吸收和储存全部由Photon Shader控制。
* 焦散投射物体 的材质定义中避免含有Shadow Shader,避免直接照明光线 穿透 物体照射到它的后方,因为开启间接照明后,这部分照明功能已经被间接照明涵盖,如果继续使用Shadow Shader,极易造成渲染的照明过度。
* 焦散投射物体 的表面材质定义中必须包含Specular传播成分,且占各种传播部分(Diffuse、Glossy、Specular)中的大部分。除非必要、尽量把 焦散投射物体 表面材质中的 Diffuse及Glossy传播成分降低到最小,或设Diffuse=Glossy=(0, 0, 0)。
* 如果 焦散投射物体 是透明的,并且希望对焦散光子产生折射作用,那么它材质定义(包括表面材质Shader和光子Shader)中的Index of refraction(折射系数)应该大于1.0,比如,玻璃的折射系数为1.5左右,钻石折射系数为2.4,这样可以对光子产生 聚焦效果,使它们聚集在一起形成明亮的光斑。
* 焦散接收物体 的表面材质定义中必须包含Diffuse成分,否则不会对焦散光子进行任何储存和吸收。
---------------------------------------------------------------------------
控制属性
* 提高焦散质量与精度的最根本办法就是提高焦散光子的储存数量,即提高光源形节点属性编辑器 - Caustic and Global Illmination部分钟的Caustics Photons的数值。储存的光子数量越多,质量越高,但速度也会越慢;储存的光子数量越少,计算的越快,但效果越模糊。Caustics Photons通常的取值范围是1万到100万之间。
* 默认情况下,场景中所有指定了Photon Shader的物体都可投射、接收焦散。但实际应用中,往往并不需要所有的物体都参与到焦散的投射、接收计算中来,此时可以进行以下设置:
window - Rendering Editors - Render Settings窗口 - Options标签 - mental ray Overrides - Global Illumination/Caustics部分中,设置 Caustics Generating = none(默认值) , Caustics Receiving = None(默认值).
关闭GI物体的 变换 节点属性编辑器 - mental ray - Flags部分中的Derive from Maya选项,然后为 焦散投射物体 的Caustics属性指定Cast only(仅投射)或Cast+Receive(投射又接收)选项;而为 焦散接收物体 的Globillum属性指定Receive only(仅接收)或Cast+Receive(投射又接收)选项;而把焦散没有任何影响的物体的Globillum功能关闭,即,设Globillum=Disabled。
* 如果焦散渲染后的 颗粒化 效果十分明显,可以调整以下选项:
Window - Rendering Editors - Render Settings窗口 - Indirect Linghting标签 - Caustics部分中Caustics属性下面的Accuracy及Radius两个数值进行质量调整。
* 用 Window - Rendering Editors - Render Settings窗口 - Indirect Linghting标签 - Caustics部分中Scale(比例)属性,控制焦散效果在渲染图像中的比例。
* Window - Rendering Editors - Render Settings窗口 - Indirect Linghting标签 - Caustics部分中的Caustic Filter Type(焦散过滤类型)Caustic Filter Kernel(过滤核心大小)。
Caustic Filter Type与Caustic Filter Kernel的主要作用是为参与 当前渲染采样点 间接照明计算的各个光子记录点指定不同的权重值。
BOX过滤方式为所有参与计算的光子点指定相等的权重值。Cone和Gauss为距离(当前渲染采样点)较近的光子点指定较高的权重值,而为那些距离(当前渲染采样点)较远的光子点指定较低的权重值。
Cone与Gauss过滤方式下,计算出的焦散间接照明值更 锐利 ,局部化 效果更明显,因为距离越近的光子,越能代表采样点的真实间接照明状态,而Cone与Gauss过滤方给近处的光子指定了较高的权重值,所以,计算出的焦散效果更精确,但渲染时间也会更长。
Caustic Filter Kernel值在Cone和Gauss过滤模式下才能发挥作用,该值越大,就会有越多的光子得到高权重值,平均化效果就越明显, 锐利 程度也会越低。当数值大到一定程时,效果就会变得与Box基本相似。
* Window - Rendering Editors - Render Settings窗口 - Indirect Linghting标签 - Photon Tracing部分中的Photon Reflections(光子反射次数)、Photon Refractions(光子折射次数)、Max Photon Depth(最大光子深度)。
这三个属性控制光子的最大反、折射次数,及反折射次数的总和。
* 另外Merge distance属性,它可以把场景世界坐标空间系统中,指定距离内的光子合并到一起,这个 指定距离 就是Merge distance的属性值。对于那些光子分布很不均匀的场景,该属性可以减少光子图的大小,降低内存的使用量,同时,也可以在一定程度上加快光子图的查找与计算过程。
参考资料
最新修订时间:2024-10-31 21:23
目录
概述
基本信息
参考资料