![c481847b080b4c21fd2a8cd17520aa61.png](https://i-blog.csdnimg.cn/blog_migrate/c2a090eb0cada417bd87c1a12102532f.jpeg)
先来介绍几个重要概念
直接光照(Direct Lighting):光源直接照射到物体表面所以产生的光照信息,进入Unity主场景加载的就是直接光照
间接光照(Indirect Lighting):光源照射到物体表面以后再反射到其它物体上所形成的光照信息
![d8566e7d7ddf7d20bbfb413bd7eb4e17.png](https://i-blog.csdnimg.cn/blog_migrate/0307eca8fd1067770aa3d6d644f5f510.jpeg)
环境光(Ambient Lighting):太阳照射大气层,散射产生天空光。环境光本质是间接光照,因为散射的本质就是反射。
全局照明(Global Illumination):直接光照加上间接光照。
——————————————————————————————————————
![17a1aa6259880a3ceeffee2dd4b0b9b6.png](https://i-blog.csdnimg.cn/blog_migrate/7755136aa941c68fdbc0f78f93c1350b.png)
Type :光照类型,可以选择spot(聚光灯),Directional(平行光),point(点光源),Area(面光源,只有烘焙才会用到);
1.平行光:最为简单的光照,我们认为受平行光影响的物体接收到的光线方向是一致的,unity中平行光源的位置是无所谓的,可以放在任何位置,这并不会影响光源的方向。
2.点光源:从一个点发出的光,影响范围只有半径范围为r的球体内,且光照强度随着远离球心而不断衰减。
3.聚光灯:同样从一个点出发,但照亮范围是一个锥形区域,我们可以把他想象成手电筒,宏观来看,他是点光源的1/n,光照同样会衰减,由于是锥形,比起圆来计算上要稍微复杂一点,他有一个张开的角度angle可以调节。
4.面光源:目前只有在烘焙时才起作用,向某个方向发射的光,同样会衰减。
Color:光源颜色。
Mode:实时光照,烘焙,混合三种模式。
1.Baked:烘焙好后不会在变化的光,耗费性能最低;
2.Mixed:烘焙好后根据场景变化适当调整,耗费性能中;
3.Realtime:实时监控场景变化,渲染光照,耗费性能最高;
Intensity:光照强度。
Indirect Multiplier:间接光照强度,即太阳光照射到物体之后,物体之间的反射强度,可以调节亮度。ShadowType:阴影类型:Hard Shadows, Soft Shadows, No shadows。
RealtimeShadows:实时阴影,相关参数可以调节光照的阴影效果,同时消耗也会不同。
RenderMode:光照的渲染计算类型,延迟渲染中会用到。
1.important:计算光照时会逐片元计算。
2.not important:逐顶点计算光照或者更高效的计算方式。
3.auto:由unity自己决定此光源的光照计算方式。
Culling Mask:根据物体的layer即层来控制此光源影响物体,我们可以将不想被光源影响的物体标记为统一的layer,在这里设置他们。
——————————————————————————————————————
Lighting的 属性
注意:Lighting窗口设置是全局的
讲解Realtime灯光模式
1.当我们勾选了Realtime GlobalIllumnation ,意味着场景里所有的灯光都会产生间接照明,Unity每一帧都会去计算实时灯光,如果没有灯光也会预计算,非常消耗性能
讲解Mixed灯光模式(包含三种算法的区别)
2.在运行期间可以计算混合光的某些属性,但只能在很强的限制范围内计算。一些混合光是预先计算的。
Baked Indirect:会实时显示直接光照,但是间接光照是烘焙到贴图中,它会预计算产生一个文件存放在硬盘中,对性能优化非常大,并且只能去烘焙静态的物体,(将物体的static勾选上)
shadowmask:除了计算间接光照,还会产生阴影,会叠加阴影的信息烘焙到贴图里
Subtractive:经常会和Light中Mode的Backed的模式相结合,会预先计算直接光照和间接光照,针对于静态物体,并存储在贴图中。删除灯光无影响,因为已经预先计算好了