Unity基础(四)Unity灯光

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity基础(四)Unity灯光相关的知识,希望对你有一定的参考价值。

参考技术A       灯光是游戏场景的重要组成部分,决定你的3D环境的颜色和氛围。通过相互搭配,让场景更加层次分明、光彩绚丽。

       Unity中的光源有四种类型:Directional Light(平行光)、Point Light(点光源)、Spot Light(聚光灯)、Area Light(区域光)。

       1、Directional Light 平行光/方向光/定向光: 平行光的光线是互相平行的,不管对象离Directional Light光源多远,它投射出来的阴影看起来都一样,而且Directional Light没有真正的光源坐标,把它放置在场景任何地方都不会影响光照效果,只有旋转会影响Directional Light的照射结果。平行光影响场景的所有物体,类似于自然界中太阳光的照明效果。通常用于(室外)模拟太阳光,它的特性就像是个太阳,可以被放置在无穷远的地方,能从无限远的距离投射光源到场景。

      在Unity里Directional Light还会与天空盒系统(程序天空盒)关联,就是把Directional Light做为太阳显示并绑定在天空壳上。指定路径(Window->Rendering->Lighting settings(打开Lighting菜单)->Scene->Sun Source)。

       2、Point Light 点光源: 点光源向四面八方(所有方向)发射光线,影响其范围内的所有对象,亮度从中心往外递减到0为止,类似灯泡的照明效果。适合用来制作像灯泡、武器发光或爆炸等效果。点光源的阴影为了要给六个不同的世界方向会运算六次,因此点光源的阴影运算是很图像处理器资源的,必须谨慎使用。注意:目前点光源不支持阴影的间接反射,这就表示由点光源产生的光线,只要在距离内有可能会穿过对象反射到另外一面,这可能会导致墙壁或地板 漏光 ,因此放置点光源要格外注意,然而如果是采用Backed GI的话,就不会有这类的问题产生。

        3、Spot Light 聚光灯: 聚光灯从光源发出,在一个方向上按照—个锥形的范围发射光线,该锥形是由聚光灯角度 (Spot Angle) 和范围 (Range) 界定的,光线会从源头到设定的范围慢慢衰减到0。类似手电筒, 路灯, 壁灯,舞台灯光等等照明效果。因为投射区域能精确的控制,因此很适合用来模拟打在角色身上的光。 聚光灯也是比较耗费图形处理器资源的。

       4、Area Light 区域光/面光源 :这种光能从各方向照射一个平面的矩形截面的一侧。该光源无法应用于实时光照,仅适用于光照贴图烘焙 lightmap baking, 

Type 类型: 灯光对象的当前类型

Color 颜色: 光线的颜色

Range 范围: 点光源/聚光灯有这个属性

Spot Angle(聚光灯角度): 聚光灯的角度

Mode 模式: 【Realtime 实时; Mixed 混合; Baked 烘培】

Intensity 强度: 光线的明亮程度

IndirectMultiplier 间接光强度

ShodowType 阴影类型(是否开启阴影): 【No Shadows 无阴影;Hard Shadows 硬阴影:锯齿强度比较明显;Soft Shadows 软(柔和)阴影:软阴影效果比硬阴影效果好,但是耗费性能。】

      Strength 硬度: 阴影的黑暗程度,取值范围是在0和1之间。

      Resolution 分辨率: 阴影的细节水平

      Bias 偏移: 用于比较灯光空间的像素位置与阴影贴图的值比较的偏移量。当值太小时,物体的表面会有来自于自身的阴影,物体就像长了痘痘一样。当值太大,光源就会脱离了接收器(彼得平移)。影子显示错位时调整。

Cookie(Cookie投影): 以纹理的Apha通道作为一个遮罩,使光线在不同的地方有不同的亮度。如果灯光是聚光灯或方向光,这必须是一个2D纹理;如果灯光是一个点光源,它必须是一个立方图(Cubemap)。

Cookie Size(缩放Cookie投影): 只用于方向光。

Draw Halo 绘制光晕: 如果勾选此项, 光线带有一定半径范围的球形光晕被绘制。

Flare:耀斑/光晕/眩光: 光晕对象是被镜头光晕组件( Lens Flare Components)使用的源资源。光晕本身是一个纹理文件和具体的信息的结合,确定眩光的行为。然后,当你想在一个场景中使用眩光,将镜头光晕(Lens Flare)组件贴到一个游戏物体上,并拖动你要使用到镜头光晕的耀斑属性的耀斑,就像给网格渲染器( Mesh Renderer)指派一个材质(Material )一样。

Render Mode 渲染模式:

      Auto 自动:

      Important 重要: 灯光逐个像素渲染。只用在一些非常重要的效果(比如玩家的车的车头灯)。

      Not Important 不重要: 灯光总是以最快的速度渲染。顶点/对象光模式。

Culling Mask 消隐遮罩: 有选择地使组对象不受光的效果影响

Lightmapping 光照贴图: 仅灯光实时计算(RealtimeOnly)、自动(Auto)、烘焙( BakedOnly)

指定位置Edit -> Project Settings -> Player -> Other Settings。

以上是关于Unity基础(四)Unity灯光的主要内容,如果未能解决你的问题,请参考以下文章

unity游戏开发看什么书?

Unity基础(一)GameObject类

unity灯光问题

unity如何更改烘焙灯光阴影的颜色

我想学习unity3d游戏程序开发 要学习啥?有推荐的书么?

怎么让unity3D中的模型渲染更逼真