Version: 6000.3
语言: 中文
将光源设置为实时或烘焙
选择灯光模式

灯光模式

有三个光源模式(Light Modes) 定义光源使用的光源属性。可以设置为 实时(Realtime)、烘焙(Baked) 和 混合(Mixed)。更多信息
请参阅术语表
光源检查器中可用:

  • 烘焙(Baked) :来自这些光源的直接和间接光照被烘焙为光照贴图(lightmaps一种预渲染的纹理,包含光源对场景中静态对象的效果。光照贴图覆盖在场景几何体之上,以创建光照效果。更多信息
    请参阅术语表
    ,这可能是一个耗时的过程。处理这些光源没有运行时成本,但是将生成的光照贴图应用于场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
    请参阅术语表
    确实有少量成本。
  • 实时(Realtime) :来自这些光源的直接光照和阴影是实时的,因此不会烘焙到光照贴图中。它们的运行时成本可能很高,具体取决于场景的复杂性、阴影投射光源的数量、重叠光源的数量等。此外,如果启用EnlightenGeomerics 的照明系统,用于 Unity 中用于 Enlighten 实时全局照明。更多信息
    请参阅术语表
    实时全局光照 一组对直接和间接光照进行建模以提供逼真的光照结果的技术。
    请参阅术语表
    ,在运行时更新间接光照将产生进一步的性能成本。
  • 混合:这是一种混合模式,混合了烘焙和实时功能,例如烘焙间接照明和实时直接照明。场景中所有混合光源的行为及其对性能的影响取决于该场景的光照模式

例:由烘焙聚光灯照亮的定向光照贴图 - 左。由混合聚光灯照亮的定向光照贴图 - 右。

由烘焙或混合聚光灯照亮的定向光照贴图。
由烘焙或混合聚光灯照亮的定向光照贴图。

请务必注意,光源的模式仅在启用烘焙全局光照系统时才相关。如果你不使用任何全局光照系统或仅使用 Enlighten 实时全局光照系统,则所有烘焙光源和混合光源的行为都将类似于其 模式(Mode) 属性设置为 实时(Realtime)。

注意:混合光源对性能的影响与实时光源相同。根据所使用的光照模式,混合光源会投射实时阴影,但不会投射烘焙的柔和阴影。

实时

这些也称为实时光源。

Unity 在运行时对实时光源执行光照计算,每帧一次。你可以在运行时更改实时光源的属性,以创建诸如闪烁的灯泡或手电筒穿过黑暗房间之类的效果。

实时光源可用于在角色或可移动几何体上打光和投射阴影。

实时光源行为

  • 实时光源将阴影投射到阴影距离。
  • 默认情况下,实时光源仅为场景提供实时直接光照。如果您使用的是内置渲染管线获取场景内容并将其显示在屏幕上的一系列作。Unity 允许您从预构建的渲染管线中进行选择,或编写自己的渲染管线。更多信息
    请参阅术语表
    如果你在项目中启用了 启发实时全局光照(Enlighten Realtime Global Illumination),实时光源还会为你的场景提供实时间接光照。

实时光源的局限性

  • 对实时光源执行运行时计算可能会成本高昂,尤其是在复杂场景或低端硬件上。
  • 由于默认情况下,实时光源仅为场景提供直接光照,因此阴影显示为完全黑色,并且没有任何间接光照效果,例如颜色反射。这可能会导致场景中的光照不真实。

混合

这些也称为混合光源。

混合光源结合了实时光照和烘焙光照的元素。你可以使用 混合光源(Mixed Lights) 将动态阴影与来自同一光源的烘焙光照组合在一起,或者当你希望光源提供直接实时光照和烘焙间接光照时。

要使用混合光源,您必须首先了解实时光源Mode 属性设置为 Realtime 的光源组件。Unity 在运行时计算并更新实时光源的每一帧光照。没有预先计算实时光源。更多信息
请参阅术语表
烘焙光源(Baked Lights) 模式属性设置为 烘焙(Baked) 的光源组件。Unity 在运行时之前预先计算烘焙光源的光照,并且不会将它们包含在任何运行时光照计算中。更多信息
请参阅术语表
.

混合光源行为

  • 场景中所有混合光源的行为取决于 光照(Lighting) 窗口中的 光照模式(Lighting Mode) 设置。不同的光照模式具有非常不同的性能特征和不同的视觉保真度。有关更多信息,请参阅照明模式
  • 你可以在运行时更改混合光源的属性。这会更新其实时光照,但不会更新其烘焙光照。执行此作时,请注意避免不必要的视觉效果。

混合光源的局限性

  • 混合光源的性能成本差异很大,具体取决于光照模式。但是,由于混合光源总是至少结合一些实时光照和一些烘焙光照,因此混合光源总是比完全烘焙光照涉及更多的运行时计算,并且比完全实时光照需要更高的内存使用。

请注意,如果您在场景中禁用 Baked Global Illumination,Unity 会强制混合光源的行为就像您将其 Mode 设置为 Realtime 一样。发生这种情况时,Unity 会在光源组件上显示警告检查器一个 Unity 窗口,显示有关当前选定游戏对象、资产或项目设置的信息,允许您检查和编辑值。更多信息
请参阅术语表
.

这些也称为烘焙光源。

Unity 在 Unity 编辑器中执行烘焙光源的计算,并将结果作为光照数据保存到磁盘。这个过程称为烘焙。在运行时,Unity 会加载烘焙的光照数据,并使用它来照亮场景。由于复杂的计算是提前执行的,因此烘焙光源降低了运行时的着色成本,并降低了阴影的渲染成本。

烘焙光源对于照亮运行时不会改变的事物(例如场景)非常有用。

烘焙光源行为

  • Unity 将烘焙光源中的直接光照和间接光照烘焙到光照贴图中。有关使用光照贴图的更多信息,请参阅光照贴图
  • Unity 将烘焙光源中的直接和间接光照烘焙到光照探针中。有关使用光照探针的更多信息,请参阅光源探针光探针存储有关光线如何穿过场景中空间的信息。在给定空间中排列的光源探针集合可以改善移动对象的光照和该空间内的静态LOD场景。更多信息
    请参阅术语表
    .

烘焙光源的局限性

  • 你无法在运行时更改烘焙光源的属性。
  • 烘焙光源不参与镜面反射光照。
  • 动态游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
    请参阅术语表
    不接收来自烘焙光源的光照或阴影。

请注意,如果您在场景中禁用 Baked Global Illumination,Unity 会强制烘焙光源的行为就像您将其 Mode 设置为 Realtime 一样。发生这种情况时,Unity 会在光源组件 Inspector 上显示警告。

将光源设置为实时或烘焙
选择灯光模式