Unity3D灯光与渲染学习之(一):天空盒、灯光以及色彩空间

最近在学习Siki学院中的U3D渲染,将学习的笔记进行整理,方便日后查阅,也方便各位交流学习。课程大纲如下:

先介绍灯光渲染的大致内容,灯光效果主要分为实时光照(RealTime) 和烘焙(Baked),实时光照根据场景中的运动信息,实时更新光照信息,比较耗费性能。而烘焙是将光照信息照射到静态物体上的影响生成光照贴图,之后便可保存灯光效果并删除灯光。接下来用几篇博客简要分析下其中的关键技术。
传送门:
Unity3D灯光与渲染学习之(一):天空盒、灯光以及色彩空间

1.天空盒

在项目的场景渲染时,并未涉及过多的天空盒内容,因此本篇博客只粗略介绍,详细的天空盒介绍可参照别志华大牛的博客: https://blog.csdn.net/biezhihua/article/details/77150512

1.1.天空盒的添加

天空盒是一个全景视图,分为六个纹理,表示上下左右前后六个方向的视图,如下图所示。经Unity处理后可以实现环绕式的显示效果,可以从网上下载并添加,也可以直接用U3D自带的天空盒,选用已有工程素材中的文件即可。

1.2.天空盒的反射

在添加了天空盒之后,添加几个物体,可以看到天空盒的颜色会对物体产生影响。

可以在Windows>Lighting>Setting中对天空盒的属性进行设定。控制场景对Cube的影响,可以选用颜色来改变小球的外观。

之后,在Cube的Inspector面板中,更改Metalic和Smoothness属性,可以改变Cube的反射情况,值越大,反射环境光的效果越明显,并且光滑度上升。

2.灯光设置

灯光设置的详细分析可以参照简书上shimmery的详细介绍,本节介绍只是抛砖引玉。 https://www.jianshu.com/p/7594b044e6dc

2.1 .直射光

从很远距离打出来,可看作是太阳光,只能控制旋转角度,不能控制位置

直射光的Light选项,默认是实时的(RealTime),可修改为烘焙。烘焙只影响场景中的静态物体,因此将受影响的物体勾选右上角的Static即可

直射光的阴影类型有3种:无,Hard Shadows,Soft Shadows,Soft Shadows最耗性能,效果分别如下

在Hard和Soft模式下,以下参数可以修改

包括
  • 强度(Strength,控制阴影强弱)
  • 分辨率(影子显示的纹质量高低)
  • 偏移(影子显示错位时调整,一般不涉及)
  • Cookie(用一张透明贴图可以打出类似花纹的阴影效果,下左图)
  • 耀斑(太阳的特效,下右图)
Culling Mask表示遮罩,如果想让某些物体不受光照影响,可以改变物体Layer,并让直射光的Culling Mask不包括这个Layer即可

除了直射光,还有点光源、聚光灯和面积光。

2.2 点光源

模拟一个小灯泡向四周发出光线。

2.3 聚光灯

模拟一个点光源仅沿着一个圆锥体方向发出光线

2.4面积光

模拟一个较大的发光表面对周围环境的照明效果,通常面积光的灯光亮度衰减很快,阴影非常柔和。

3.色彩空间(Color Space)

整体环境的光亮调节可以在Edit>Project Setting>Player之中,控制Color Space为Linear或是Gamma,可看到不同效果,Linear光影细节更丰富,并且更亮

Linear的变化更平滑,Gamma的两极变化更剧烈,选用Linear更好,但不是所有设备都支持Linear,在配置较差的手机上只支持Gamma。

猜你喜欢

转载自blog.csdn.net/s1314_JHC/article/details/80618820