refactor(srp): move camera frame plan policy into managed urp
This commit is contained in:
@@ -41,6 +41,32 @@ void ApplyManagedDirectionalShadowPlanningPolicyOrDefault(
|
||||
}
|
||||
}
|
||||
|
||||
void ApplyManagedCameraFramePlanPolicyOrDefault(
|
||||
const std::string& assetKey,
|
||||
CameraFramePlan& plan,
|
||||
const FinalColorSettings& defaultFinalColorSettings) {
|
||||
if (assetKey.empty()) {
|
||||
ApplyDefaultRenderPipelineAssetCameraFramePlanPolicy(
|
||||
plan,
|
||||
defaultFinalColorSettings);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!Rendering::Internal::ApplyCameraFramePlanPolicyByKey(
|
||||
assetKey,
|
||||
plan,
|
||||
defaultFinalColorSettings)) {
|
||||
Debug::Logger::Get().Error(
|
||||
Debug::LogCategory::Rendering,
|
||||
Containers::String(
|
||||
"ManagedScriptableRenderPipelineAsset failed to resolve camera frame plan policy asset key: ") +
|
||||
assetKey.c_str());
|
||||
ApplyDefaultRenderPipelineAssetCameraFramePlanPolicy(
|
||||
plan,
|
||||
defaultFinalColorSettings);
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace
|
||||
|
||||
ManagedScriptableRenderPipelineAsset::ManagedScriptableRenderPipelineAsset(
|
||||
@@ -150,13 +176,19 @@ void ManagedScriptableRenderPipelineAsset::ConfigureCameraRenderRequest(
|
||||
|
||||
void ManagedScriptableRenderPipelineAsset::ConfigureCameraFramePlan(
|
||||
CameraFramePlan& plan) const {
|
||||
RenderPipelineAsset::ConfigureCameraFramePlan(plan);
|
||||
|
||||
if (const std::shared_ptr<const ManagedRenderPipelineAssetRuntime> runtime =
|
||||
ResolveManagedAssetRuntime();
|
||||
runtime != nullptr) {
|
||||
ApplyManagedCameraFramePlanPolicyOrDefault(
|
||||
runtime->GetCameraFramePlanPolicyAssetKey(
|
||||
plan.request.rendererIndex),
|
||||
plan,
|
||||
GetDefaultFinalColorSettings());
|
||||
runtime->ConfigureCameraFramePlan(plan);
|
||||
return;
|
||||
}
|
||||
|
||||
RenderPipelineAsset::ConfigureCameraFramePlan(plan);
|
||||
}
|
||||
|
||||
FinalColorSettings ManagedScriptableRenderPipelineAsset::GetDefaultFinalColorSettings() const {
|
||||
|
||||
Reference in New Issue
Block a user