34 lines
1000 B
Markdown
34 lines
1000 B
Markdown
|
|
# Extraction
|
||
|
|
|
||
|
|
**命名空间**: `XCEngine::Rendering`
|
||
|
|
|
||
|
|
**类型**: `submodule`
|
||
|
|
|
||
|
|
**头文件目录**: `engine/include/XCEngine/Rendering/Extraction/`
|
||
|
|
|
||
|
|
**描述**: Rendering 场景提取层,负责把 `Scene` 和 `CameraComponent` 压平成 `RenderSceneData`、`RenderCameraData` 与 `VisibleRenderItem`。
|
||
|
|
|
||
|
|
## 概览
|
||
|
|
|
||
|
|
`Extraction` 解决的是“场景语义如何转换成渲染语义”。
|
||
|
|
|
||
|
|
当前它由两个公开入口组成:
|
||
|
|
|
||
|
|
- [RenderSceneExtractor](RenderSceneExtractor/RenderSceneExtractor.md)
|
||
|
|
- [RenderSceneUtility](RenderSceneUtility/RenderSceneUtility.md)
|
||
|
|
|
||
|
|
## 当前职责
|
||
|
|
|
||
|
|
- 选择当前应使用的相机
|
||
|
|
- 提取主方向光和 additional lights
|
||
|
|
- 遍历场景层级并收集 `VisibleRenderItem`
|
||
|
|
- 构建 `RenderCameraData`
|
||
|
|
|
||
|
|
## 相关文档
|
||
|
|
|
||
|
|
- [Rendering](../Rendering.md)
|
||
|
|
- [FrameData](../FrameData/FrameData.md)
|
||
|
|
- [Execution](../Execution/Execution.md)
|
||
|
|
- [Scene Extraction And Builtin Forward Pipeline](../../../_guides/Rendering/Scene-Extraction-And-Builtin-Forward-Pipeline.md)
|
||
|
|
|