Files
XCEngine/docs/api/XCEngine/Rendering/CameraRenderer/SetShadowCasterPass.md

1.1 KiB
Raw Blame History

CameraRenderer::SetShadowCasterPass

命名空间: XCEngine::Rendering

类型: method

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

签名

void SetShadowCasterPass(std::unique_ptr<RenderPass> shadowCasterPass);

作用

替换当前用于消费 request.shadowCaster 的独立 scene pass。

当前实现行为

  1. 如果旧 m_shadowCasterPass 非空,先调用它的 Shutdown()
  2. 接管新的 shadowCasterPass
  3. 如果新指针为空,则自动回退到 Passes::BuiltinShadowCasterPass

关键语义

  • 这里替换的是一个普通 RenderPass,并不要求必须是 builtin shadow-caster 实现。
  • CameraRenderer::Render() 只在 request.shadowCaster.IsRequested() 时才会执行这里持有的 pass。
  • 当前执行顺序里shadow-caster pass 位于 depth-only 与主主管线之前。

相关文档