Files
XCEngine/docs/api/XCEngine/Rendering/RenderSurface/HasCustomRenderArea.md

1.4 KiB
Raw Blame History

RenderSurface::HasCustomRenderArea

查询当前是否启用了显式 render area。

bool HasCustomRenderArea() const;

返回值

  • 返回 true 表示曾通过 SetRenderArea 写入自定义区域,当前 GetRenderArea 不再直接等于整张 surface。
  • 返回 false 表示当前仍使用默认的整 surface 区域。

当前语义

  • 该标志由 SetRenderArea 置为 true,由 ResetRenderArea 清回 false
  • 调用 SetSize 不会重置这个标志;如果 surface 尺寸变化,内部只会把已保存的 render area 重新 clamp 到新边界内。
  • “启用了自定义 render area”和“最终区域是否刚好等于整张 surface”不是一回事。即使 clamp 后矩形看起来与整 surface 相同,这个标志仍可能保持 true

调用方影响

  • SceneRenderer 会在已有 surface render area 的基础上继续解析相机 viewport因此这个标志会影响后续请求是否被视为“嵌套 viewport”场景。
  • 对外部调用方来说,判断当前是否存在显式子区域时,应优先看这里,而不是仅比较 GetRenderArea 的数值。

相关文档