# SceneRenderer::GetPipelineAsset 返回当前场景渲染器绑定的 pipeline asset。 ```cpp const RenderPipelineAsset* GetPipelineAsset() const; ``` ## 返回值 - 返回内部 `m_cameraRenderer.GetPipelineAsset()` 的结果。 ## 当前语义 - 这是一个非拥有观察指针,用来回答“当前 runtime pipeline 是由哪个 asset 工厂派生出来的”。 - 默认构造的 `SceneRenderer` 通常会返回默认 builtin forward pipeline asset。 - 如果最近一次切换是 [SetPipeline](SetPipeline.md) 且传入了非空 runtime pipeline,这里会变成 `nullptr`,因为那条路径会清掉当前 asset 绑定。 - 如果 [SetPipelineAsset](SetPipelineAsset.md) 传入空指针,内部不会保留 `nullptr`,而是回退到默认 builtin forward asset。 ## 调用方影响 - 这不是 `shared_ptr` 的外露别名,不提供所有权,也不保证在 `SceneRenderer` 生命周期之外继续有效。 - 对外部来说,它更适合做调试、状态展示或测试断言,而不适合做长期缓存键。 ## 测试覆盖 - `tests/Rendering/unit/test_camera_scene_renderer.cpp` 覆盖了默认 asset、替换 asset,以及替换 runtime pipeline 后 asset 观察值的变化。 ## 相关文档 - [SceneRenderer](SceneRenderer.md) - [SetPipelineAsset](SetPipelineAsset.md) - [GetPipeline](GetPipeline.md)