Close out SRP/URP phase 1 validation

This commit is contained in:
2026-04-26 00:49:45 +08:00
parent c62a7fec0a
commit e1b8bebcfb
5 changed files with 185 additions and 259 deletions

View File

@@ -2048,21 +2048,31 @@ private:
m_assetRuntime != nullptr
? m_assetRuntime->GetPipelineRendererAsset()
: nullptr;
if (sharedPipelineBackendAsset == nullptr) {
const std::shared_ptr<const Rendering::RenderPipelineAsset>
resolvedPipelineBackendAsset =
sharedPipelineBackendAsset != nullptr
? sharedPipelineBackendAsset
: m_assetRuntime != nullptr &&
m_assetRuntime->GetPipelineRendererAssetPolicy() ==
Rendering::Pipelines::ManagedPipelineRendererAssetPolicy::
DefaultNativeBackend
? Rendering::Internal::CreateDefaultPipelineBackendAsset()
: nullptr;
if (resolvedPipelineBackendAsset == nullptr) {
return nullptr;
}
if (m_ownedSceneDrawBackend == nullptr ||
sharedPipelineBackendAsset !=
resolvedPipelineBackendAsset !=
m_ownedSharedPipelineBackendAsset) {
if (m_ownedSceneDrawBackend != nullptr) {
m_ownedSceneDrawBackend->Shutdown();
}
m_ownedSceneDrawBackend =
Rendering::Internal::CreateSceneDrawBackendFromAsset(
sharedPipelineBackendAsset);
resolvedPipelineBackendAsset);
m_ownedSharedPipelineBackendAsset =
sharedPipelineBackendAsset;
resolvedPipelineBackendAsset;
}
return m_ownedSceneDrawBackend.get();