Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

物理灯光和相机单位

为什么使用物理灯光和相机单位?

Godot 对许多适用于光的物理属性(如颜色、能量、相机视野和曝光)使用任意单位(arbitrary units)。 默认情况下,这些属性使用任意单位,因为使用精确的物理单位会带来一些权衡,这对于许多游戏来说是不值得的。 由于 Godot 在默认情况下注重易用性,因此默认情况下禁用物理光单元。

物理单位的优点

如果你的目标是在项目中实现照片级真实感,那么使用现实世界的单位作为基础可以帮助你更轻松地进行调整。 有关现实世界材质、灯光和场景亮度的参考资料可以在`Physically Based <https://physicallybased.info/>`__ 等网站上找到。

当从其他使用物理光单位(如 Blender)的 3D 软件移植场景时,在 Godot 中使用现实世界单位也会很有用。

物理单位的缺点

使用物理光单位的最大缺点是你必须密切注意在给定时间使用的动态范围。 将非常高的光强度与非常低的光强度混合时,可能会遇到浮点精度错误。

实际上,这意味着你必须手动管理曝光设置,以确保场景不会过度曝光或曝光不足。 自动曝光可以帮助你平衡场景中的光线,使其在正常范围内,但它无法恢复因动态范围过高而损失的精度。

使用物理光和相机单位不会自动使你的项目看起来 更好 。 有时,远离现实主义的表现实际上可以使场景在人眼看来更好。 此外,与非物理单位相比,使用物理单位需要更严格的要求。 只有正确设置物理单位以匹配现实世界的参考,才能获得使用物理单位的大多数好处。

备注

物理光单位仅在 3D 渲染中可用,在 2D 渲染中不可用。

设置物理灯光单元

物理光单位可以与物理相机单位分开启用。

要正确启用物理光单位,需要 4 个步骤:

  1. 使用项目设置。

  2. 配置运行。

  3. 配置环境。

  4. 配置 Light3D 节点。

由于物理光和相机单位仅需要少量计算来处理单位转换,因此启用它们不会对 CPU 产生任何明显的性能影响。 然而,在 GPU 方面,物理相机单元目前会强制使用景深。 这对性能有中等影响。 为了减轻这种性能影响,可以在高级项目设置中降低景深质量。

启用项目设置

打开项目设置,启用 高级设置 开关,然后启用 渲染>灯光与阴影>使用物理光线单位 。 重新启动编辑器。

配置相机

警告

当物理光单位启用时,如果你的场景中有一个 WorldEnvironment 节点(即编辑器环境被禁用),你 必须 将一个