1.6 KiB
1.6 KiB
RenderCameraData
命名空间: XCEngine::Rendering
类型: struct
头文件: XCEngine/Rendering/RenderCameraData.h
描述: 保存渲染阶段实际使用的相机矩阵、清屏色和视口尺寸。
概述
RenderCameraData 是“场景组件层的相机”向“渲染层可直接消费的数据块”之间的桥接结构。
这种拆分很有价值,因为渲染层通常不应该直接依赖完整 CameraComponent 行为,而是应该消费一份已经拍平的渲染数据:
- 视图矩阵
- 投影矩阵
- 组合矩阵
- 相机世界位置
- 清屏色
- 视口尺寸
字段
| 字段 | 类型 | 说明 |
|---|---|---|
view |
Math::Matrix4x4 |
视图矩阵。 |
projection |
Math::Matrix4x4 |
投影矩阵。 |
viewProjection |
Math::Matrix4x4 |
projection * view 组合矩阵。 |
worldPosition |
Math::Vector3 |
相机世界坐标。 |
clearColor |
Math::Color |
默认清屏色。 |
viewportWidth |
uint32_t |
当前视口宽度。 |
viewportHeight |
uint32_t |
当前视口高度。 |
当前实现说明
- 这组矩阵由 RenderSceneExtractor 构造。
- 当前 extractor 会在写入这里之前对
view、projection和viewProjection做转置。 - 这说明当前渲染路径是按“尽量让 shader 直接消费统一矩阵布局”的思路设计的。