【Maya】Arnold渲染器的学习(3): Arnold灯光
【AreaLight(区域光)】
常用于模拟室内照明。它有三种形状:Quad(矩形)、Cylinder(圆柱)、Disk(圆盘),可在Light Shape下拉菜单中选择。Quad常用于模拟面片光源,例如显示器、透过窗外到达室内的光线;Cylinder用于模拟圆柱体光源,例如灯管、激光;Disk用于模拟圆盘状光源,例如月亮、圆形顶灯。其中,Quad形状的区域光参数最丰富,可以设定灯光的扩散(Spread)、分辨率(Resolution)、圆度(Roundness)、软边(SoftEdge)。
Spread:默认值为1。数值越低(始终不等于0)灯光越聚集,产生的画面噪波越多。
Resolution:默认值为512。应和连接灯光Color通道的图片分辨率相同(如果使用了贴图)。
Roundness:默认值为0,表示矩形四个角为直角。随着数值增大,矩形四个角会变成圆弧。值为1时矩形就变成了圆形。
SoftEdge:默认值为0,灯光边缘无衰减。数值增大,灯光边缘出现衰减模糊;值为1时,灯光边缘将达到最大的衰减。类似后期剪辑中的图像边缘羽化功能。
【SkydomeLight(天穹光)】
常用于模拟室外照明。在介绍天穹光之前,先来了解两个概念:IBL和HDRI。
IBL(Image-based lighting):基于贴图的照明技术。通过专用相机,将真实世界的光照信息全方位的捕捉并存储到图像中,然后将图像应用于三维场景的环境照明。
HDRI(High Dynamic Range Imaging):高动态范围成像。使用高动态范围摄影技术,再现超过标准动态范围亮度的数字成像技术。通俗的说,就是用计算机渲染或者HDR相机拍摄得到高于标准亮度的图片,便于后期图形细节的调节,例如再现遥远星云的微弱光芒。
*标准动态范围成像,就是直接展现在显示器或者纸张上的颜色,是以人类视觉系统编码的,也称伽马校正。
【一句话阐述IBL和HDRI的关系】
使用HDRI技术得到HDR图片,然后通过IBL技术,将HDR图片(后缀可以是.hdr或者.exr)作为三维场景的环境照明参考。这就是间接光照技术中的HDR贴图照明的原理(MentalRay渲染器中称为FinalGather“最终聚集”的技术就和IBL技术有关)。
多数时候,我们会选择HDR贴图素材连接到SkydomeLight的Color通道创造出各种自然或建筑环境。
Resolution(分辨率):默认值为1000。同Area Light,分辨率应该和HDR图片一致,或者比图片分辨率低,过大会造成不必要的系统资源浪费。
Format(格式):默认Lat-long。有四种方式:Lat-long(经度-纬度)、Mirrored Ball(镜像球)、Angular(角度)。Lat-long是最常用的,匹配多数HDR贴图的布局方式。
Portal Mode(入口模式):默认interior_only 。off,关闭入口;interior_only,阻挡入口外的灯光;interior_exterior,允许入口外的灯光通过。
如果场景中没有使用LightPortal(灯光引导),这个参数不起作用。使用LightPortal时, Portal Mode要设置为Interior_exterior才能得到全部的灯光效果。值得一提,设置为interior_only会加快渲染速度,尽管它会失去一些小缝隙处的光线引入,但画面表现效果有时会好于Interior_exterior模式。有关Portal Mode文章后半部分会进行说明。
AOV Indirect(AOV间接):默认天穹光是输出到直接AOV的,勾选转为间接AOV。
*AOV可以理解为类似MentalRay的渲染通道,一种分图层渲染技术。
Viewport(视口):Sky Radius(天空半径)和Facing(朝向),作用是改变天空球在场景中的尺寸和贴图朝向。这两个参数只是视口显示,改变设置不影响渲染结果。
【MeshLight(网格灯光)】
模拟人造发光体。原本是几何体形状节点下的属性,未来只保留在Arnold灯光菜单中,用于将多边形几何体转换为特殊形状的灯光。相比材质的自发光(Emission)属性,网格灯光的照明效果更明显,产生的画面噪点也更少,并且网格灯光可以产生间接照明效果,而材质自发光只能进行直接照明,缺少光线的环境反弹。
当将一个多边形几何体转为网格灯光,几何体形状节点下的ObjectDisplay的Visibility属性被网格灯光节点的Show Original Mesh属性关联。几何体默认是不显示在视口的,勾选Show Original Mesh可以启用几何体可见(通常都会隐藏)。如果要在渲染中显示灯光轮廓,勾选Light Visible,而不是Show Original Mesh。
*网格灯光会忽略多边形的平滑处理,也就是多边形形状节点下的Subdivision(细分)功能不起作用。如果要删除网格灯光还原灯光模型,在outliner的灯光模型子级中删除light_mesh_light节点即可。
【PhotometricLight(光度学灯光)】
需要灯泡制造商提供的灯光数据才能发挥作用的,用于模拟真实灯泡的照明效果。如果要制作现实中各式各样的照明光斑,使用特定的*.ies数据可以很快的构建所需的灯光效果,例如手电筒或者自行车夜行灯那样中心区和边缘亮度不同的光斑。
*光度学灯光只有在渲染后才能看到效果。
LightPortal(灯光引导)
需要场景中存在SkydomeLight才能使用,作用是将室外光线引导到室内进行照明。SkydomeLight针对开阔的室外场景进行了照明的优化,但对于光线穿透建筑物门窗进行的室内照明存在不足,会产生大量噪波。因此需要LightPortal对特定区域进行SkydomeLight光线的引导。
*LightPortal的用法和区域光一样,将它放置并覆盖住整个入口即可
通常使用面光源和平行光模拟天光对室内的照明效果,天穹光仅仅是作为背景,不参与照明。
单纯使用天穹光+HDRI贴图进行环境照明,不管是否使用LightPortal,都会产生大量噪波。
采用颜色通道为纯白色的天穹光进行照明,可以看到,使用LightPortal能最大限度的降低噪波。
而使用LightPortal时,interior_only模式除了在墙角和木板夹缝处没有照明效果,画面效果和Interior_exterior是差不多的,而渲染时间却缩短了1/3。
【PhysicalSky(物理天空)】
用于模拟真实的天空照明,可设定太阳的位置、尺寸和照明强度。事实上PhysicalSky就是在Color通道连接上物理天空纹理节点(aiPhysicalSky)的SkydomeLight。物理天空通常用于构建简单的大气照明环境,快速展示场景效果。
例如这个官方示例中的场景,仅使用了一盏聚光灯和物理天空即构建了清晨的大气照明环境效果(渲染设置中添加了“大气体积(aiAtmosphereVolume)”着色器)。
【总结】
在实际应用中,AreaLight和SkydomeLight的使用概率较高。需要注意的是,多数情况下,都不应该使用SkydomeLight来进行封闭的室内照明,会产生不必要的噪波,应使用AreaLight来完成。
好细致专业的讲解。