【Maya】Arnold渲染器的学习(3): Arnold灯光

  • A+
所属分类:渲染

【Arnold灯光】

在Arnold插件的菜单栏下,Arnold->Lights,包括Area Light、Skydome Light、Mesh Light、Photometric Light、Light Portal、Physical Sky。

【Maya】Arnold渲染器的学习(3): Arnold灯光

无论是Arnold灯光还是Maya内置灯光,都有一些公用的属性,以下部分资料参考了Arnold的官方技术文档和图片范例。

【Maya】Arnold渲染器的学习(3): Arnold灯光


【UseColorTemperature(使用色温)】

默认关闭。在灯光的Arnold卷展栏下,勾选UseColorTemperature,将启用标准的灯光照明计算,通过色温(单位:开尔文,符号K)来定义灯光的冷暖程度。开启后将忽略用户自定义的灯光颜色,包括连接到Color通道的纹理贴图。

*国际照明委员会将6500K视为白点,高于6500K为冷色,低于6500K为暖色。显示器厂商的传统设定, 一般将暖色定为6500K,冷色定为9300K。

下图是参考,注意在不同用户的显示器中会表现出不一样的色彩效果。

【Maya】Arnold渲染器的学习(3): Arnold灯光

【Exposure(曝光)】

F制光圈值。假定Exposure的值为n,最终照明强度是灯光的强度乘以2的n次幂,是一个倍增倍减亮度效果的参数。计算公式是:

颜色*强度*2^曝光。

例如:1*1*2^3=1*1*(2*2*2)=8。非零数的0次幂等于1,所以Exposure为0的时候是不对原灯光强度做任何倍增和倍减操作。

【Maya】Arnold渲染器的学习(3): Arnold灯光

在灯光具有衰减的情况下,Intensity数值可能会很庞大才能实现足够的照明效果,所以Exposure是一个快捷的调整参数,当然这也和使用者的习惯有关。

【Samples(采样)】

使用灯光照明时,镜面反射的高光和软阴影的区域会产生噪波(尤其是使用天穹光照明时),可以增大采样值来减少噪波改善画面。灯光采样值会和Arnold渲染设置的AA采样数相乘,得到实际使用的阴影光线数。如果值为0,灯光将会被禁用。采样数越多,渲染时间会越长,通常使用灯光采样3-5的数值即可解决直接照明的噪波问题。

对比不同参数设置的渲染结果:

【Maya】Arnold渲染器的学习(3): Arnold灯光

可以看到灯光采样解决的是直接照明产生的噪波(主要是墙面和地面),而间接照明噪波、具有反射的材质的镜面噪波以及透明物体的光线透射噪波,需要在渲染设置中提高Camera(AA)摄像机采样值来解决(或者分别提高Diffuse、Specular和Transmission的采样值)。

【Normalize(规格化)】

默认启用。启用后,灯光量保持恒定,具有面积的灯光(Area Light和Mesh Light)增大尺寸时,照明范围变广,而单位面积的照明强度会降低,阴影会减弱变柔和。如果关闭,灯光的照明强度和表面积成正比。

【Maya】Arnold渲染器的学习(3): Arnold灯光

【CastShadows(投射阴影)】

默认启用。启用后灯光照射物体才能产生阴影。

ShadowDensity(阴影密度):值为0不会产生阴影,值为1产生不透明的黑色阴影,0至1之间是具有透明度的阴影。

ShadowColor(阴影颜色):设置阴影的颜色,通常为黑色。表现艺术氛围时,也会根据光源的色温进行反相调节。

【Maya】Arnold渲染器的学习(3): Arnold灯光

*因为阿诺德遵循能量守恒,在渲染写实场景的时候,应尽量使用带投影效果的灯光。

【CastVolumetricShadows(投射体积阴影):启用后会计算体积阴影效果,例如浓雾中的光束阴影。

【Maya】Arnold渲染器的学习(3): Arnold灯光

*虽然属性面板上有保留,但是平行光(Directional Light)和天穹光(SkydomeLight)中此项参数不起作用。

【VolumeSamples(体积采样数)

和曲面的采样一样,是一个平方数。当几何体形状节点下的Volume Attributes的Step Size和Volume Padding设置大于0的数,并赋予几何体标准体积着色器(aiStandardVolume),Arnold将启用网格体积功能,也就是将多边形几何体当做流体云进行渲染。VolumeSamples值决定着流体的渲染质量。

【Maya】Arnold渲染器的学习(3): Arnold灯光

*不适用于“体积散射(VolumetricScattering)”着色器,该着色器的渲染质量和节点属性的采样数(Samples)有关。“体积散射”着色器现在称为大气着色器(AtmosphereVolume),在渲染设置的Environment栏下添加,节点名称叫“aiAtmosphereVolume”

【Visibility(可见性)】

Diffuse(漫反射)、Specular(镜面反射)、SSS(次表面散射)、Volume(体积)都建议保持数值1,以保证真实的物理效果。Sky Dome Light会多出两个特殊的参数:Camera(摄像机)和Transmission(透射)。Camera数值1是将灯光Color通道的贴图作为背景渲染可见,设置为0将得到透明的背景。这在我们仅需要HDR贴图作为光照信息并分离背景时会很有用。Transmission应保持数值1,它是天穹光穿过透明物体的能力,低于1将得不到正确的物理结果。

【MaxBounces(最大反弹次数)】

允许灯光能量在场景反弹的最大次数。如果设置为0,将关闭灯光的GI效果,不产生间接照明。一般保持默认的999,虽然实际并不一定能达到这个理论最大值。

【Maya】Arnold渲染器的学习(3): Arnold灯光


【AreaLight(区域光)】

【Maya】Arnold渲染器的学习(3): Arnold灯光

常用于模拟室内照明。它有三种形状:Quad(矩形)、Cylinder(圆柱)、Disk(圆盘),可在Light Shape下拉菜单中选择。Quad常用于模拟面片光源,例如显示器、透过窗外到达室内的光线;Cylinder用于模拟圆柱体光源,例如灯管、激光;Disk用于模拟圆盘状光源,例如月亮、圆形顶灯。其中,Quad形状的区域光参数最丰富,可以设定灯光的扩散(Spread)、分辨率(Resolution)、圆度(Roundness)、软边(SoftEdge)。

Spread:默认值为1。数值越低(始终不等于0)灯光越聚集,产生的画面噪波越多。

【Maya】Arnold渲染器的学习(3): Arnold灯光

Resolution:默认值为512。应和连接灯光Color通道的图片分辨率相同(如果使用了贴图)。

Roundness:默认值为0,表示矩形四个角为直角。随着数值增大,矩形四个角会变成圆弧。值为1时矩形就变成了圆形。

SoftEdge:默认值为0,灯光边缘无衰减。数值增大,灯光边缘出现衰减模糊;值为1时,灯光边缘将达到最大的衰减。类似后期剪辑中的图像边缘羽化功能。


【SkydomeLight(天穹光)】

【Maya】Arnold渲染器的学习(3): Arnold灯光

常用于模拟室外照明。在介绍天穹光之前,先来了解两个概念:IBLHDRI

 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通道创造出各种自然或建筑环境。

【Maya】Arnold渲染器的学习(3): Arnold灯光

【Maya】Arnold渲染器的学习(3): Arnold灯光

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(网格灯光)】

【Maya】Arnold渲染器的学习(3): Arnold灯光

模拟人造发光体。原本是几何体形状节点下的属性,未来只保留在Arnold灯光菜单中,用于将多边形几何体转换为特殊形状的灯光。相比材质的自发光(Emission)属性,网格灯光的照明效果更明显,产生的画面噪点也更少,并且网格灯光可以产生间接照明效果,而材质自发光只能进行直接照明,缺少光线的环境反弹。

当将一个多边形几何体转为网格灯光,几何体形状节点下的ObjectDisplay的Visibility属性被网格灯光节点的Show Original Mesh属性关联。几何体默认是不显示在视口的,勾选Show Original Mesh可以启用几何体可见(通常都会隐藏)。如果要在渲染中显示灯光轮廓,勾选Light Visible,而不是Show Original Mesh。

*网格灯光会忽略多边形的平滑处理,也就是多边形形状节点下的Subdivision(细分)功能不起作用。如果要删除网格灯光还原灯光模型,在outliner的灯光模型子级中删除light_mesh_light节点即可。


【PhotometricLight(光度学灯光)】

需要灯泡制造商提供的灯光数据才能发挥作用的,用于模拟真实灯泡的照明效果。如果要制作现实中各式各样的照明光斑,使用特定的*.ies数据可以很快的构建所需的灯光效果,例如手电筒或者自行车夜行灯那样中心区和边缘亮度不同的光斑。

【Maya】Arnold渲染器的学习(3): Arnold灯光

*光度学灯光只有在渲染后才能看到效果。


LightPortal(灯光引导)

需要场景中存在SkydomeLight才能使用,作用是将室外光线引导到室内进行照明。SkydomeLight针对开阔的室外场景进行了照明的优化,但对于光线穿透建筑物门窗进行的室内照明存在不足,会产生大量噪波。因此需要LightPortal对特定区域进行SkydomeLight光线的引导。

*LightPortal的用法和区域光一样,将它放置并覆盖住整个入口即可

通常使用面光源和平行光模拟天光对室内的照明效果,天穹光仅仅是作为背景,不参与照明。

【Maya】Arnold渲染器的学习(3): Arnold灯光

单纯使用天穹光+HDRI贴图进行环境照明,不管是否使用LightPortal,都会产生大量噪波。

【Maya】Arnold渲染器的学习(3): Arnold灯光

采用颜色通道为纯白色的天穹光进行照明,可以看到,使用LightPortal能最大限度的降低噪波。

【Maya】Arnold渲染器的学习(3): Arnold灯光

而使用LightPortal时,interior_only模式除了在墙角和木板夹缝处没有照明效果,画面效果和Interior_exterior是差不多的,而渲染时间却缩短了1/3。

【Maya】Arnold渲染器的学习(3): Arnold灯光


【PhysicalSky(物理天空)】

用于模拟真实的天空照明,可设定太阳的位置、尺寸和照明强度。事实上PhysicalSky就是在Color通道连接上物理天空纹理节点(aiPhysicalSky)的SkydomeLight。物理天空通常用于构建简单的大气照明环境,快速展示场景效果。

例如这个官方示例中的场景,仅使用了一盏聚光灯和物理天空即构建了清晨的大气照明环境效果(渲染设置中添加了“大气体积(aiAtmosphereVolume)”着色器)。

【Maya】Arnold渲染器的学习(3): Arnold灯光


【总结】

在实际应用中,AreaLight和SkydomeLight的使用概率较高。需要注意的是,多数情况下,都不应该使用SkydomeLight来进行封闭的室内照明,会产生不必要的噪波,应使用AreaLight来完成。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: