欢迎大家继续学习 Unity 游戏编程进阶
本节我们主要介绍 Unity 中全局光照的使用方法
本节将采用 PPT 讲解加项目演示的方式介绍全局光照的相关知识要点
在项目演示环节,我们演示了全局光照在《慕课英雄2》项目中的具体应用
希望大家可以根据自己的专业基础和学习能力,从以下方法中选择一种来学习 第一种方法:先看
PPT 讲解,对相关知识有一个系统的了解 然后观看演示视频,学习知识点的应用。
第二种方法 先看项目演示视频,了解知识要点的具体应用,再回到 PPT
讲解阶段,有针对性的学习知识要点 第三种方法:跳过 PPT 讲解,直接进入项目演示
通过理解项目中知识要点的运用,完成相关知识要点的学习 不去回顾
PPT 讲解,下面进入 PPT 讲解阶段 我们可以用 Baked GI
或者 Precomputed Realtime GI
全局光照 无论使用哪种方法,第一步都需要把场景中应用全局光照的物体设置为静态物体
具体操作为,用户选中需要应用全局光照的 游戏这一项,然后单击
Inspector 视图右上角 Static 标签旁的黑色小三角 在弹出的下拉列表中,勾选
Lightmap Static 静态物体设置完成后
我们需要在场景设置中启动全局光照功能,具体操作为 在菜单栏中点击
Windows 菜单下的 Lighting 打开 Unity Lighting
光照设置窗口 点击 Lighting
窗口 顶端中部的 Scene 按钮,打开场景配置页
找到并勾选 Precomputed Realtime GI 标签,或者 Baked GI
标签前的复选框 开启相应的全局光照模式,对于这两种全局光照
模型的优缺点,上一节已经讲解过了,大家可以根据实际公正情况选择一种 或者同时启用两种模型,Unity
默认两种模型都启用 我们勾选窗口底部 Build 按钮左侧的
Auto 复选框 帮我们在场景中设置了静态物体,并且设置好相应的光源后
Unity 会自动计算并拥有全局光照 全局光照开启后
我们需要设置光源的属性,光源的 Baking 属性有三个选项:Baked, Realtime,
Mixed 选择 Baked, 表示该光源用于 Baked GI 模式下烘焙光照纹理
无法对非静态物体产生影响;选择 Mixed 表示该光源除了用于 Baked GI
的烘焙,还会在运行时照亮非静态物体 如果选择 Realtime,
在没有开启任何全局光照的情况下 该光源使用局部光照,在开启 Precomputed Realtime GI
情况下 该光源产生实时全局光照,执行完以上步骤后,Unity
会自动进行全局光照的预计算 Bake Indirect 的进度在 Unity
窗口的右下角显示 烘焙完成后,场景会自动应用全局光照的效果
在 Baked GI 模式下
每当我们增删静态物体或者修改静态物体的属性 修改 Baked 或者 Mixed
光源的属性后, Unity 都会自动重新烘焙 并在烘焙结束后自动应用全局光照效果
在 Precomputed Realtime GI
模式下 每当我们增删静态物体或者修改静态物体的一部分属性后
Unity 都会重新进行烘焙,并在烘焙结束后自动应用全局光照效果
上一节我们提到过 Precomputed Realtime GI 的一个优点是
允许实时改变光源的数量、 位置、 朝向以及物体的材质
因此增加删除或者修改光源和物体材质后,Unity 都不会进行重新烘焙
我们之前提到过面光源,Area Light
它只能在 Baked GI,也就是烘焙模式下使用,我们向场景中添加面光源
只有等待 Unity 烘焙结束后,才能看到面光源的效果 本节 PPT
图片展示了红绿蓝三个面光源照亮小球的效果 [空白_录音]
下一节我们将介绍 Unity 中, 光照探头的使用方法 接下来是演示环节
我们将演示为游戏场景添加全局光照效果的方法