相机
相机的可视范围是通过 6 个平面组成一个 视锥体(Frustum) 构成,近裁剪面(Near Plane) 和 远裁剪面(Far Plane) 用于控制近处和远处的可视距离与范围,同时它们也构成了视口的大小。
相机组件接口请参考 Camera API。
相机组件是我们用来呈现场景画面的重要功能组件。
相机分组渲染
Visibility 属性用于设置哪些层级(Layer)的节点应该被相机观察到,可同时选择多个 Layer。
当开发者在 Visibility 属性中勾选了多个 Layer 时,Visibility 属性值便是通过将多个 Layer 的属性值执行 操作计算得出。
例如,下图中相机的 Visibility 属性同时勾选了 UI_3D 和 DEFAULT 这两个 Layer,通过 查询 Layer 属性值 可以知道 UI_3D 的属性值是 1 << 23,DEFAULT 的属性值是 1 << 30,那么 Visibility 属性值便是 1 << 23 | 1 << 30 = 1082130432。
关于 Layer 的实现详情,请参考 文档。
Aperture, Shutter,Iso 这三个相机的物理参数会决定进光量,进而影响曝光量(Exposure Value)。仅在场景开启 HDR 的情况下生效。其算法通常为:
ev = log 2 (ApertureValue2 / ShutterValue*k / IsoValue)
其中 、 和 通过 Aperture, Shutter,Iso 这三个属性的枚举值查表得出。k 为常量。
下图演示了曝光量对场景的影响: