[Unity3d](翻译)Global Illumination
备注:国内貌似没人翻译,同事需要,所以就顺带翻译了一份。有兴趣的看看就好。这文章不确定是否会更新,所以看之前大家看下时间。如果太久远的话请去官方看看呗。如果有什么错误的留言指正一下,翻译简单仓促没有校对。
Global Illumination - Lighting Window
Lighting Window (在菜单的Window > Lighting 里) 主要控制UNITY的全局光照(GI)。尽管GI的默认设置在Unity里的效果不错,但Ligthing Window的属性设置让你可以调整更多方面的细节来更好定制你所需要的性能、速度和储存空间等。这个窗口当然也包涵了一些在5.0以前Render Settings光照相关的设置,例如环境关,光晕,cookies,雾效。
总览
Lighing Window分为三个页签:
物体管理页(Object)可以让你选择场景中的物体来改变它的渲染设置。这对选择物体是否被GI计算和同时对一组物体设置非常有用。
场景管理页(Scene)主要用于一些场景的总体的设置,这些设置控制光的效果和优化选项。
光照贴图页(Lightmaps)显示GI所处理的光照贴图资源文件
以下将会详细的解释每一个页签。
无论你选哪个页签,窗口的底部总有一个Auto的checkbox。如果开启的话,这将会允许光照贴图数据在你编辑场景的同时自动更新(当然你需要知道这个可能会持续几秒钟而不是立即生效的)。如果Auto按钮是关闭的话,那旁边那个Build按钮级可以被点击。你想更新的时候,可以用这个按钮来更新光照贴图。按钮旁边还有一个下拉菜单,里面有个是清除所烘培的数据(但不清除缓存)。
在Auto下面有一个小面板,显示当前光照贴图的静态数据。
Object Tab(物体管理页)
这个页面可以让你选择一组物体,并且对他们进行设置。
在页签的顶部是过滤物体的按钮,这可以让你快速选择特定类型物体:Lights,Renderers,Terrains.选择全部则跟普通时候的hierarchy一样。
如果你选择任意一个,hierarchy将会只显示这个类型的物体,这只是一个很正常的过滤hierarchy的类型例子。
需要注意的是,这个过滤不会被你当前选择的东西影响,也不会影响你当前的选择。例如你选择了一个光,此刻你过滤条件是地形,你当前选择的仍然是光,只不过你看到的是地形的过滤类型。
相关的过滤按钮在下面都有它不一样的属性,下面再详细说。
Lights
一个光源选项的设置事实上跟在inpector面板里面显示的是一样的,这个属性会直接影响到GI的烘培和Bonuce Intensity(反弹强度)。
你可以选择这个光是否需要烘培,“Baked GI”如果选择了的话,这个光是需要烘培的。“Mixed”的话,也会被烘培,不过也会为非静态物体(non-static object)持续提供实时光照。
Bounce Intensity可以让你处理不同直射光的反射强度。(例如:光从一个物体反弹到另一个物体,这个值是全局光照系统默认光照计算的倍数参数)如果你将这个参数设置得大于1,反弹的光将会更加明亮,反之会更暗。这个很有用,例如,当你在一个很暗的地方(洞穴里面),你想要细节更加清晰,那么则将它调大。如果你想限制某个光,让它不反弹,则设置为0)。
Renderers
下面的属性是可用的:
Lightmap Static:这个选项表明这个物体是否已经摆好位置了让GI可以去渲染它。如果没有勾选,这个物体还是可以被Light Probes照明的。
Scale in Lightmap:这个值影响物体在光照贴图中的像素值的多少。默认是1,这个值是以物体的表面积来参照的。(译者:巴拉巴拉……一堆废话),这个值大于1的话,代表它在光照贴图中单位表面积占比越多。越少,则占比越少。
Preserve UVs:Unity可以为实时光照贴图计算UV(增加储存大小),需要注意的是,如果重新计算UV的话有可能跟先前的UV匹配不上。例如一个有意为之的形状边缘可能会被误以为是连续的表面,导致光照贴图的中的缝隙不一样。如果这个选项勾上了的话,原本由物体而来的UV将会切换为UNITY自动生成的UV。如果这个关了,Unity会基于已经烘培的UV自动计算实时光照贴图UV(为了加入“邻接表”,尽可能去匹配原本的lightmap)。计算将会基于下面的两个设置值(最大距离和最大角度)。这个实时的表,有半个像素的边缘围绕着,以确保我们不会渲染的时候有崩裂现象。(译者备注:一般情况就默认勾上吧)
Auto UV Max Distance : 启用光照的时候将会自动通过UV表( UV charts)生成简化的UV,这个表值会在世界空间的距离比这个值小的时候简化。
Auto UV Max Angle:启用光照的时候将会自动通过UV表( UV charts)生成简化的UV,这个表值会在世界空间的角度比这个值小的时候简化。
Important GI:这会告诉UNITY,从这个物体产生光照反射和发射不会被UNITY自动优化掉,确保这个物体的光照反射效果优先。
Advanced Parameters:让你为当前选中的物体选择或创建创建一系列光照贴图的参数
Terrains
Lightmap Static:这个选项表明这个物体是否已经摆好位置了让GI可以去渲染它。如果没有勾选,这个物体还是可以被Light Probes照明的。
Scale in Lightmap:这个值影响物体在光照贴图中的像素值的多少。默认是1,这个值是以物体的表面积来参照的。(译者:巴拉巴拉……一堆废话),这个值大于1的话,代表它在光照贴图中单位表面积占比越多。越少,则占比越少。
Advanced Parameters:让你为当前选中的物体选择或创建创建一系列光照贴图的参数。默认为地形创建的参数是很低的。
Scene Tab(场景管理页)
场景管理页包涵了场景总体的设置,需要注意的是,预先计算的GI和烘培的GI特性可以被功能向前面的checkbox启用和关闭。
Skybox:天空盒是一张呈现去模拟天空或者其他环境的背景,这个属性让你选择你想要的天空盒。
Sun:当使用了一个处理好的天空盒,你可以在场景中选择一个指定的直射光将模拟去代表这个太阳。如果这个设为NONE,最明亮的(the brightest directional light)也会被认为是呈现的太阳。
Ambient Source:环境光是一直在场景中存在不从任何方向任何物体来的光。这有三个选项可以选择环境关的来源。“Color”的话简单的用一个颜色来(flat color)来处理场景中所有的环境光。“Gradient”让你选择颜色分开去作为环境光,例如天空,水平环境,地面且让其过度自然。“Skybox”天空盒各处颜色将决定了环境光的不同的角度的颜色,这允许比简单的Grandient选项更加精确的效果。
Ambient Intensity:环境光在场景中的亮度
Ambient GI:指定全局光照模式是用实时光照还是烘培光照来处理环境光,这个选项不会有什么效果除非两个模式都在场景中启用。
Reflection Source:允许你指定是skybox还是自定义的一种cubmap来代替。如果选了skybox将会以skybox来作为反射的目标。
Reflection Intensity:反射系数,表明有多少skybox 或cubmap将会影响到反射性质的物体。
Reflection Bounces:反射反弹次数,一次反射的反弹会反射到另外一个物体上。这些反射将会通过Reflection Probes被捕捉到场景中。这个选项让你设置光能多少次经过Probes来回反射。如果设置为1则不反射到Probes上。
Precomputed Realtime GI
Realtime Resolution:这个设置是用来设置多少个像素将会被用作一个单位的长度让物体被实时光照渲染。这个值为1的时候通畅被认为是不错的了(取决于这个物体在场景中的大小),但对于地形和大型物体来说,你通常需要降低这个值。你可以用Lightmap Parameters或Mesh Renderer的Scale In Lightmap 的属性去降低。需要注意的是,如果实时和烘培GI同时被启用的话,这个属性也会间接的设置。详细见下面的描述。
CPU Usage:CPU占用,这个让你能大致的控制CPU在实时渲染中的使用能耗。 Higher CPU会使反馈更加迅速,但有可能会影响到帧率等,这不会影响EDITOR中的CPU的占用。值得注意的是,更高的CPU占用是通过增加GI的计算的线程来实现的,处理器因此可能会降低帧率。
Baked GI:烘培全局光照
Baked Resolution :这个设置是用来设置多少个像素将会被用作一个单位的长度让物体被烘培静态光照渲染。一般来说这个是10倍的实时光照。
Baked Padding:每个物体在光照贴图中分隔的距离。
Compressed:是否这个光照贴图需要被压缩,压缩完后需要更少的储存空间,但有可能会影响到贴图的质量(你不大想要的)。
Indirect Resolution:(只在Precomputed Realtime GI关闭的时候才会有这个选项)间接照明的解决方案。相当于Realtime Resolution在打开Precomputed Realtime GI的时候。
Ambient Occlusion:这牵涉到环境光的吸收强弱(例如,环境光在内角部分的吸收),值越高表示吸收和完全照亮区域之间的反差。这仅适用于GI系统最后的收集进行间接光照计算。当最终采集选项开启了,在GUI计算中最后的光反弹将会作为烘培的光照贴图被计算在同样解决方式,这光照贴图的提高视觉质量,但会消耗额外的关照计算时间。
General GI
Directional Mode:直接的模式,光照贴图可以用来储存关于主要的入射光在物体表面的信息。在入射光模式,第二张光照贴图将会被生成用来储存入射光信息。这允许DIFFUSE和NORMAL MAPPED的材质在GI下也同时有效。在Directional Specular 模式下,更多的信息被储存老支持反射和法线。Non-directional模式将这这些都关了。Directional 模式 会用到大概两倍的储存信息空间,Directional Specular模式大概会用到4倍的储存空间。
Indirect Intensity:间接光源的强度,例如:物体的反射光和发射光的强度,1是默认参数。越高则光强度越强。
Bounce Boost:反射光加强。1为默认值,不增强。
Default Parameters:默认参数,一系列解决方案的参数,你可以选择NEW来自定义这些属性。也可以选择U3D的三种高低方案。
Fog
Fog Color :全局雾效的颜色
Fog Mode: 雾效计算的模式,包括Linear, Exponential , Exponential Squared
Start (在Linear模式下才生效) 离摄像机的最近距离
End (在Linear模式下才生效) 离摄像机的最远距离
Other Settings
Halo Texture 画光晕的贴图
Halo Strength 环绕着光的可视光晕
Flare Fade Speed 炫光出现后褪去的速度
Flare Strength 炫光的长度
Spot Cookie 点光源的cookie贴图
Lightmaps Tab(光照贴图的页签)
最后的页签提供了最简单的方式去设置和定位场景中的光照贴图资源
如果你在Lightmap Snapshot box点击这个文件名,工程会直接引导你显示资源文件,如果你点击盒子旁边的small pip ,你将会选中这个不一样的光照贴图。如果你重命名这个资源文件,并且将引用设为NONE,那么下一次BUILD光照贴图的时候它将会重新生成一张。
在Lightmap Snapshot盒子下面显示的图片资源显示简略的光照贴图缩略图,当烘培模式开启的时候才会用到。如果是实时光照模式,这个缩略图将会变成空白。