Files
XCEngine/docs/api/XCEngine/Rendering/RenderSceneExtractor/SelectCamera.md

1007 B
Raw Blame History

RenderSceneExtractor::SelectCamera

Components::CameraComponent* SelectCamera(
    const Components::Scene& scene,
    Components::CameraComponent* overrideCamera) const;

行为说明

当前相机选择规则是:

  1. 如果 overrideCamera 可用,直接返回它。
  2. 否则在场景相机里挑出所有可用的 primary camera并返回 depth 最高的那一台。
  3. 如果没有可用 primary camera则返回第一台可用相机。
  4. 如果场景里没有任何可用相机,返回 nullptr

“可用相机”的当前定义

相机必须同时满足:

  • 指针非空
  • camera->IsEnabled()
  • camera->GetGameObject() != nullptr
  • 相机所在 GameObject 处于 IsActiveInHierarchy()

返回值

  • 当前规则下选中的相机。
  • 找不到可用相机时返回 nullptr

相关文档