Unity3D技术之深刻了解光照贴图详解

 


深刻了解光照贴图
 

若是是第一次接触 Unity 中的光照贴图,本快速入门指南将对您有所帮助。算法

 

      光照贴图彻底集成到 Unity 中,可在编辑器 (Editor) 中建立整个关卡,而后对其进行光照映射,让全部材质自动获取光照贴图,无需手动进行。对 Unity 中的光照贴图来讲,全部灯光属性会直接映射到 Beast 光照烘培贴图工具中并烘培到纹理,提升性能。Unity 专业版扩展了全局照明 (Global Illumination) 功能,可烘培出真实、美观的光照,实时的相反操做则不可行。此外,Unity 专业版提供天光和发光材质,使场景照明更加有趣。 在本页中,您将看到光照贴图 (Lightmapping) 窗口中出现的全部属性的深刻描述。要打开光照贴图 (Lightmapping) 窗口,请选择窗口 (Window) – 光照贴图 (Lightmapping) 选项。数组


204216skngd65cqdtzozao.jpg 
 

检视器顶部有三个场景筛选器 (Scene Filter) 按钮,供用户将操做应用到全部对象或限制在灯光或渲染器内。app



对象 (Object)


每一个对象的灯光、网格渲染器和地形烘培设置根据当前的选择而定。编辑器

单击场景筛选器 (Scene Filter) 按钮可在层级视图 (Hierarchy) 中轻松看到灯光、渲染器或地形。函数

网格渲染器和地形 (Mesh Renderers and Terrains):工具

 

   
静态光照贴图 (Lightmap Static) 网格渲染器和地形 (Mesh Renderers and Terrains) 须标为静态才能进行烘培。
光照贴图比率 (Scale In Lightmap)

(仅用于网格渲染器 (Mesh Renderers))值越大,网格渲染器的分辨率越高。最终分辨率将成比例(光照贴图缩放 (Scale))*(对象的世界坐标空间所占面积)*(全局烘培设置分辨率 (Resolution) 值)。值设置为 0 将不烘培对象(但仍会影响其余烘培对象)。性能

光照贴图大小 (Lightmap Size) (仅用于地形)地形实例的光照贴图大小。地形不与其余对象共用图集,而是有本身的光照贴图。
图集 (Atlas)

若是禁用锁定图集 (Lock Atlas),图集信息 – 将自动更新。若是启用锁定图集 (Lock Atlas),这些参数不会自动修改,可手动编辑。spa

光照贴图索引 (Lightmap Index) 光照贴图数组中的索引。
平铺 (Tiling) (仅用于网格渲染器 (Mesh Renderers))对象的光照贴图 UV 平铺。
偏移 (Offset) (仅用于网格渲染器 (Mesh Renderers))对象的光照贴图 UV 偏移。

 

灯光 (Lights):htm

 

   
光照贴图 (Lightmapping) 光照贴图 (Lightmapping) 模式:仅限实时 (Realtime Only)、自动 (Auto) 或仅限烘培 (Baked Only) 模式。参阅如下双重光照贴图 (Dual Lightmaps) 说明。
颜色 (Color) 灯光颜色。实时渲染采用相同属性。
强度 (Intensity) 灯光强度。实时渲染采用相同属性。
反弹强度 (Bounce Intensity) 特定光源发出的间接灯光强度的倍增值。
烘培阴影 (Baked Shadows) 控制这盏灯照明的对象是否投射阴影(在自动灯光 (Auto) 的状况下控制实时阴影)。
阴影半径 (Shadow Radius) (仅用于点光源和聚光灯)增长该值造成直接软阴影,增长该灯光投影(而非照明)的覆盖面积计算。
阴影角度 (Shadow Angle) (仅用于方向灯)增长该值造成直接软阴影,增长该灯光投影(而非照明)的角度覆盖面积计算。
阴影采样 (Shadow Samples) 若是将阴影半径 (Shadow Radius) 或角度 (Angle) 值设为大于零的数,将相应增长阴影采样 (Shadow Samples) 的数量。高采样值将消除半影中的噪点,但会增长渲染次数。


烘培 (Bake)

全局烘培设置
 对象

   
模式 (Mode) 控制脱机光照贴图烘培和运行时的光照贴图渲染模式。在双重光照贴图 (Dual Lightmaps) 模式中,近端和远端的光照贴图都会烘培;只有延迟渲染路径支持渲染双重光照贴图。单光照贴图 (Single Lightmaps) 模式只会使远端的光照贴图被烘培;延迟渲染路径中也可强制使用单光照贴图 (Single Lightmaps) 模式。
使用向前渲染 (Use in forward rendering) (仅用于双重光照贴图 (Dual lightmaps))在向前渲染中启用双重光照贴图。注意,在该选项中要求建立本身的着色器用于操做。
质量 (Quality) 高质量(效果好)和低质量(速度快)烘培的预设值。它们会影响最终汇集光线的数量、对比度阈值及部分其余最终汇集和抗锯齿设置。
反弹 (Bounces) 全局照明 (Global Illumination) 模拟中光线反弹的次数。至少要有一次反弹才能造成真实柔和的间接光线。设置为 0 时只会计算直接光线。
天光颜色 (Sky Light Color) 天光模拟天空各个方向放射出的光线,很适合室外场景。
天光强度 (Sky Light Intensity) 天光的强度,值设置为 0 将禁用天光。
反弹加强 (Bounce Boost) 容许加强黑暗场景中的光线反弹。若是场景中包含黑暗材质,可用直接强光补充。间接照明将很是微弱,由于反弹光线会快速消失。将反弹加强的值设置为大于 1 可经过将反射率颜色值推向 1 用于 GI 计算,对此进行补偿。请注意,0 至 1 之间的值会减小光线反弹。实际计算按照每一个组件的 pow(colorComponent, (1.0/bounceBoost)) 进行。
反弹强度 (Bounce Intensity) 间接光线强度的倍增值。
最终汇集光线 (Final Gather Rays) 每一个最终汇集点发射出的光线数量,值越高,质量越好。
对比度阈值 (Contrast Threshold) 颜色对比阈值,据此,新的最终汇集点采用适当的采样算法进行建立。值越高,Beast 容许的表面照明变化越多,从而产生较平滑、不太详细的光照贴图。最终汇集光线数量越少,须要的对比度阈值越高,从而不迫使建立其余最终汇集点。
插值 (Interpolation) 控制最终汇集点颜色的插值。0 表示线性插值,1 表示基于梯度的高级插值。在某些状况下推荐使用后者。
插值点 (Interpolation Points) 插入最终汇集点之间的数值。数值越高,效果越平滑,但也会消除照明中的细节。
环境光遮挡 (Ambient Occlusion) 烘培至光照贴图中的环境光遮挡量。环境光遮挡指集成了本地半球大小最大距离 (Max Distance) 的可见性函数,所以不考虑任何照明信息。
锁定图集 (Lock Atlas) 启用锁定图集 (Lock Atlas) 时,自动图集不会运行,对象的光照贴图索引、平铺和偏移不能修改。
分辨率 (Resolution) 每世界单位的光照贴图分辨率大小,将分辨率设置为 50 的 10×10 单位平面将产生一张 500×500 纹素的光照贴图。

填充 (Padding)

图集上单个项目之间剩余的空白区,以纹素单位 (0..1) 表示。



贴图 (Maps)

全部光照贴图的可编辑数组。
 

   
压缩 (Compressed) 控制是否压缩场景中全部光照贴图资源。
数组大小 (Array Size) 光照贴图数组的大小(0 至 254)。
光照贴图数组 (Lightmaps Array) 当前场景中全部光照贴图的可编辑数组。未指定的通道处理为黑色光照贴图。索引至关于网格渲染器和地形 (Mesh Renderers and Terrains) 中的光照贴图索引 (Lightmaps Index) 值。除非启用锁定图集 (Lock Atlas),不然该数组将自动调整大小并在烘培光照贴图时进行填充。


光照贴图显示 (Lightmap Display)

控制光照贴图如何在编辑器中显示的工具。光照贴图显示 (Lightmap Display) 是场景视图 (Scene View) 的一个子窗口。只要光照贴图 (Lightmapping) 可见,就显示该子窗口。
 

   
使用光照贴图 (Use Lightmaps) 控制是否在渲染时使用光照贴图。
阴影距离 (Shadow Distance) 自动 (Auto) 模式灯光与近端 (Close By) 光照贴图淡出为远端 (Far Away) 光照贴图之间的距离。该设置重写 QualitySettings.shadowDistance 设置但不会覆盖。
显示分辨率 (Show Resolution) 控制场景视图中的光照贴图分辨率 (Lightmap Resolution) 模式,开启该模式可预览静态对象的光照贴图纹素大小。
相关文章
相关标签/搜索