1.5 KiB
1.5 KiB
VisibleRenderObject
命名空间: XCEngine::Rendering
类型: struct
头文件: XCEngine/Rendering/VisibleRenderObject.h
描述: 表示经过 scene extraction 后、当前帧准备交给渲染管线处理的一个可绘制对象。
概述
VisibleRenderObject 的价值,在于把场景对象、组件引用和绘制所需的最核心数据打包在一起。
它当前没有变成更重的 render proxy 或 render packet,而是保持为非常轻量的桥接结构。这对当前引擎阶段是合理的。
字段
| 字段 | 类型 | 说明 |
|---|---|---|
gameObject |
Components::GameObject* |
原始场景对象。 |
meshFilter |
Components::MeshFilterComponent* |
提供 mesh 的组件。 |
meshRenderer |
Components::MeshRendererComponent* |
提供材质与渲染设置的组件。 |
mesh |
Resources::Mesh* |
当前要绘制的 mesh。 |
localToWorld |
Math::Matrix4x4 |
当前对象的局部到世界矩阵。 |
当前实现说明
- 该结构由 RenderSceneExtractor 填充。
- 当前
localToWorld直接来自GameObject->GetTransform()->GetLocalToWorldMatrix()。 - 当前还没有把材质、排序 key、render queue、bounds 等更完整的渲染包信息放进来。