Files
XCEngine/docs/api/XCEngine/Rendering/Pipelines/BuiltinForwardPipelineAsset/CreatePipeline.md

1.4 KiB

BuiltinForwardPipelineAsset::CreatePipeline

命名空间: XCEngine::Rendering::Pipelines

类型: method

头文件: XCEngine/Rendering/Pipelines/BuiltinForwardPipeline.h

创建一条新的 builtin forward runtime pipeline。

std::unique_ptr<RenderPipeline> CreatePipeline() const override;

当前实现行为

当前实现直接返回:

std::make_unique<BuiltinForwardPipeline>()

这意味着:

  • 每次调用都会生成一条新的 BuiltinForwardPipeline
  • 当前不会复用已有 runtime pipeline
  • 当前这个方法本身不会做额外 fallback 分支

与外层 fallback 的边界

CameraRenderer 通过内部 CreatePipelineFromAsset() 使用这个方法:

  1. 先尝试 asset->CreatePipeline()
  2. 如果拿到有效实例,就接管这条新管线
  3. 如果 asset 为空或返回空指针,再由 CameraRenderer 回退到直接 std::make_unique<BuiltinForwardPipeline>()

BuiltinForwardPipelineAsset 来说,第 3 步是调用方策略,不是这里的方法体逻辑。 按当前实现,这个方法自身也不会返回 nullptr

返回值

  • std::unique_ptr<RenderPipeline> - 指向一条全新的 BuiltinForwardPipeline

相关文档