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