docs: sync scene renderer docs

This commit is contained in:
2026-04-03 14:03:28 +08:00
parent 73821ff73f
commit e4a4e90592
14 changed files with 436 additions and 131 deletions

View File

@@ -1,25 +1,32 @@
# SceneRenderer::SetPipeline
替换当前使用的渲染管线。
```cpp
void SetPipeline(std::unique_ptr<RenderPipeline> pipeline);
```
## 行为说明
当前实现
当前实现只是把调用转发给内部 `m_cameraRenderer`
1. 若已有 pipeline则先调用其 `Shutdown()`
2. 用新传入的 `unique_ptr` 替换当前 pipeline。
3. 如果新指针为空,则自动退回到 `BuiltinForwardPipeline`
```cpp
m_cameraRenderer.SetPipeline(std::move(pipeline));
```
## 当前语义
沿用 `CameraRenderer::SetPipeline()` 的规则:
- 当前绑定的 `RenderPipelineAsset` 会被清空。
- 被替换掉的旧 runtime pipeline 会先执行 `Shutdown()`
- 如果新传入的 `pipeline` 为空,内部会回退到默认 pipeline asset并重新创建默认主管线。
## 参数
- `pipeline` - 新的渲染管线实例
- `pipeline` - 新的 runtime pipeline 所有权,可为空
## 相关文档
- [返回类型总览](SceneRenderer.md)
- [SceneRenderer](SceneRenderer.md)
- [SetPipelineAsset](SetPipelineAsset.md)
- [GetPipeline](GetPipeline.md)
- [BuiltinForwardPipeline](../Pipelines/BuiltinForwardPipeline/BuiltinForwardPipeline.md)
- [CameraRenderer::SetPipeline](../CameraRenderer/SetPipeline.md)