Implement render graph compiler and transient fullscreen execution
This commit is contained in:
@@ -44,21 +44,6 @@ void SceneRenderer::SetPipelineAsset(std::shared_ptr<const RenderPipelineAsset>
|
||||
m_cameraRenderer.SetPipelineAsset(std::move(pipelineAsset));
|
||||
}
|
||||
|
||||
std::vector<CameraRenderRequest> SceneRenderer::BuildRenderRequests(
|
||||
const Components::Scene& scene,
|
||||
Components::CameraComponent* overrideCamera,
|
||||
const RenderContext& context,
|
||||
const RenderSurface& surface) {
|
||||
const std::vector<CameraFramePlan> plans =
|
||||
BuildFramePlans(scene, overrideCamera, context, surface);
|
||||
std::vector<CameraRenderRequest> requests = {};
|
||||
requests.reserve(plans.size());
|
||||
for (const CameraFramePlan& plan : plans) {
|
||||
requests.push_back(BuildCompatibilityCameraRenderRequest(plan));
|
||||
}
|
||||
return requests;
|
||||
}
|
||||
|
||||
std::vector<CameraFramePlan> SceneRenderer::BuildFramePlans(
|
||||
const Components::Scene& scene,
|
||||
Components::CameraComponent* overrideCamera,
|
||||
@@ -71,15 +56,6 @@ std::vector<CameraFramePlan> SceneRenderer::BuildFramePlans(
|
||||
: std::vector<CameraFramePlan>();
|
||||
}
|
||||
|
||||
bool SceneRenderer::Render(const CameraRenderRequest& request) {
|
||||
return Render(CameraFramePlan::FromRequest(request));
|
||||
}
|
||||
|
||||
bool SceneRenderer::Render(const std::vector<CameraRenderRequest>& requests) {
|
||||
std::vector<CameraFramePlan> plans = CreateFramePlansFromLegacyRequests(requests);
|
||||
return Render(plans);
|
||||
}
|
||||
|
||||
bool SceneRenderer::Render(const CameraFramePlan& plan) {
|
||||
return m_cameraRenderer.Render(plan);
|
||||
}
|
||||
@@ -130,16 +106,5 @@ bool SceneRenderer::Render(
|
||||
return Render(BuildFramePlans(scene, overrideCamera, context, surface));
|
||||
}
|
||||
|
||||
std::vector<CameraFramePlan> SceneRenderer::CreateFramePlansFromLegacyRequests(
|
||||
const std::vector<CameraRenderRequest>& requests) const {
|
||||
std::vector<CameraFramePlan> plans = {};
|
||||
plans.reserve(requests.size());
|
||||
for (const CameraRenderRequest& request : requests) {
|
||||
plans.push_back(CameraFramePlan::FromRequest(request));
|
||||
}
|
||||
|
||||
return plans;
|
||||
}
|
||||
|
||||
} // namespace Rendering
|
||||
} // namespace XCEngine
|
||||
|
||||
Reference in New Issue
Block a user