1.2 KiB
1.2 KiB
SceneRenderRequestPlanner::CollectCameras
std::vector<Components::CameraComponent*> CollectCameras(
const Components::Scene& scene,
Components::CameraComponent* overrideCamera) const;
行为说明
当前实现按下面的顺序决定这次真正参与渲染规划的相机列表:
- 如果
overrideCamera通过 SceneRenderRequestUtils 的IsUsableCamera()检查,则只返回这一台相机。 - 否则从
scene里收集全部CameraComponent。 - 过滤掉不可用相机。
- 调用
SceneRenderRequestUtils::SortSceneCamerasForRendering(...)做稳定排序。
返回值
- 一个已经过滤并排序好的相机数组。
- 如果没有任何可用相机,返回空数组。
当前排序语义
base相机会排在overlay前面。- 同一 stack 类型内部再按
depth升序。 - 排序使用
std::stable_sort(),所以完全同键时仍保留场景原始枚举顺序。