Unity光照学习笔记

之前看了几篇教程,感觉Unity似乎没多么难,但自从接触到了光照后,真的是看不明白,知识实在是太多太庞杂了。Unity很多分支真的非常需要深入研究。

本篇从有限的学习整理出来,不一定是正确的。

首先是一篇https://www.jianshu.com/p/7594b044e6dc ,看发布日期是17年,太久远了,很多技术都更新了,看个大概吧。

游戏场景中灯光照明的构成

光照渲染计算方案,总体上分为这样几类:

  1. 直接模拟光线从被光源发出到最终被物体完全吸收的正向过程,也就是常说的GI(Global Illumination);
  2. 不直接模拟光线,而是反向搜集物体表面特定点的受光照强度来模拟现实照明效果,也就是常说的FG(Final Gathering);
  3. 完全不考虑光线的行为,单纯基于“物体上与其他物体越接近的区域,受到反射光线的照明越弱”这一现象来模拟模拟现实照明(的一部分)效果,也就是常说的AO(Ambient Occlusion);
  4. 将场景光照结果完全烘焙到模型贴图上,从而完完全全的假冒现实光照效果,也就是我们所说的Lightmap。

GI、FG,计算量都非常大。

光照贴图需要事先烘焙(baking)出来,且仅支持静态物体(Static Object)。

游戏场景中几乎不可能全都是静态物体,所以通常游戏场景中的灯光照明是多种照明方式的混合作用。

  1. 对于静态物体来说,大多使用光照贴图来模拟间接光的照明效果,然后加上直接光源的动态照明效果;
  2. 对于运动物体来说,则仅用直接光源的动态照明效果,或者使用光照探针来模拟间接光的照明效果。

1.直接照明(Direct Lighting)

Unity3D中的直接照明主要来源于各种灯光物体,而灯光物体本质上是空物体加上灯光组件。直接照明可以产生阴影,但光线不会反射、也不会折射,但可以穿透半透明材质物体。

1.1 灯光类型(Lights)

Unity3D中默认可以创建这么几种灯光:聚光灯、点光源、平行光、面积光,另外还可以创建两种探针(Probe):反射探针(Reflection Probe)和光照探针组(Light Probe Group)。

不行了先暂停了,太难了,慢慢理解。

发表评论

电子邮件地址不会被公开。 必填项已用*标注