Version: 6000.3
语言: 中文
内置渲染管线中的光照
从内置渲染管线中的游戏对象发射光源

内置渲染管线中的每像素和每顶点光源

如果您使用默认的 Forward 渲染路径,Unity 会将每个实时光源组件设置为以下类型之一:

  • 每像素光源
  • 每顶点光源
  • 球面谐波 (SH) 每顶点光

有关更多信息,请参阅每像素和每顶点光源

内置渲染管线获取场景内容并将其显示在屏幕上的一系列作。Unity 允许您从预构建的渲染管线中进行选择,或编写自己的渲染管线。更多信息
请参阅术语表
渲染每个游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表
对影响它的每个像素光源一次。

SH 灯速度很快,对性能影响很小或没有影响。但是,SH 灯不支持 cookie,法线贴图(normal maps一种凹凸贴图纹理,可用于向模型添加表面细节,如凹凸、凹槽和划痕,这些细节可以捕捉光线,就好像它们由真实几何体表示一样。
请参阅术语表
,或镜面反射高光。它们还具有锐利的照明过渡,并且可能看起来不正确。

Unity 如何对灯光进行分类

默认情况下,Unity 使用以下条件对灯光进行分组:

  • 最亮的光源始终是每像素光源。这通常是主定向光源。
  • 接下来的 4 个最重要的灯光是每个顶点灯光。
  • 其余灯是SH灯。

在渲染过程中,Unity 会查找网格Unity 的主要图形基元。网格构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 表面必须转换为多边形。更多信息
请参阅术语表
并计算哪些灯对它影响最大。

例如,在下图中,球体游戏对象由 8 个具有相同颜色和强度的灯光照亮,Unity 将四个最近的灯光(A 到 D)设置为每像素灯光,将 D 到 G 灯设置为每顶点灯光,将 G 和 H 灯设置为 SH 灯光。每个每像素灯光都会创建一个单独的渲染通道。

由 8 个灯光照亮的球体游戏对象
由 8 个灯光照亮的球体游戏对象
Unity 如何对灯光进行分类
Unity 如何对灯光进行分类

为了帮助避免游戏对象和灯光移动时可见光过渡,Unity 将灯光从一种模式混合到另一种模式。在前面的示例中,Unity 将灯光 D 从每像素光源混合到每顶点光源。

有关优化 Unity 对灯光进行分类的方式的信息,请参阅优化内置渲染管线中的灯光

其他资源

内置渲染管线中的光照
从内置渲染管线中的游戏对象发射光源