Files
XCEngine/docs/api/XCEngine/Rendering/Planning/CameraRenderRequest/ScenePassRenderRequest/IsValid.md

1.1 KiB

ScenePassRenderRequest::IsValid

检查当前 scene pass 输出目标是否满足执行 pass 的最小条件。

bool IsValid() const;

行为说明

当前头文件内联实现要求同时满足:

const std::vector<RHI::RHIResourceView*>& colorAttachments = surface.GetColorAttachments();
return !colorAttachments.empty() &&
       colorAttachments[0] != nullptr &&
       surface.GetDepthAttachment() != nullptr &&
       surface.GetRenderAreaWidth() > 0 &&
       surface.GetRenderAreaHeight() > 0;

返回值

  • 第一个颜色附件非空、深度附件非空且 render area 宽高都大于 0 时返回 true
  • 否则返回 false

CameraRenderer::Render() 的关系

  • CameraRenderer::Render() 会先看 IsRequested
  • 如果请求了 shadowCasterdepthOnly,但这里返回 false,整次相机渲染会直接失败。

相关文档