Files
XCEngine/docs/api/XCEngine/Rendering/Execution/CameraRenderer/SetObjectIdPass.md

1010 B

CameraRenderer::SetObjectIdPass

命名空间: XCEngine::Rendering

类型: method

头文件: XCEngine/Rendering/Execution/CameraRenderer.h

签名

void SetObjectIdPass(std::unique_ptr<RenderPass> objectIdPass);

作用

替换当前 object-id 阶段使用的独立 RenderPass 实例。

当前实现行为

  1. 如果旧 m_objectIdPass 非空,先调用 Shutdown()
  2. 接管新的 objectIdPass
  3. 如果传入空指针,则自动回退到 Passes::BuiltinObjectIdPass

关键语义

  • 这里接收的是通用 RenderPass,不是已经移除的专用 ObjectIdPass 基类。
  • CameraRenderer::Render() 只有在 request.objectId.IsRequested() 为真时才会执行这里持有的 pass。
  • 该指针的所有权完全转移给 CameraRenderer;调用方不再负责释放。

相关文档