From a7cda9375ad8dd45e51aba3deeced249507a9ed7 Mon Sep 17 00:00:00 2001 From: ssdfasd <2156608475@qq.com> Date: Sun, 19 Apr 2026 14:11:25 +0800 Subject: [PATCH] refactor(srp): move renderer model into universal package --- .../Scripting/EditorScriptAssemblyBuilder.cpp | 3 +-- managed/CMakeLists.txt | 21 +++++++++---------- managed/GameScripts/RenderPipelineApiProbe.cs | 1 - .../ScriptableRenderContextApiSurfaceProbe.cs | 6 +++--- .../ColorScalePostProcessRendererFeature.cs | 1 - ...DisableDirectionalShadowRendererFeature.cs | 1 - .../RenderPassEvent.cs | 2 +- .../RendererBackedRenderPipeline.cs | 2 +- .../RendererBackedRenderPipelineAsset.cs | 2 +- .../RendererDrivenRenderPipeline.cs | 2 +- .../{Renderer => Universal}/RenderingData.cs | 2 +- .../ScriptableRenderPass.cs | 2 +- .../ScriptableRenderer.cs | 2 +- .../ScriptableRendererData.cs | 2 +- .../ScriptableRendererFeature.cs | 2 +- .../Universal/UniversalRenderPipelineAsset.cs | 1 - .../Rendering/Universal/UniversalRenderer.cs | 1 - .../Universal/UniversalRendererData.cs | 1 - 18 files changed, 23 insertions(+), 31 deletions(-) rename managed/XCEngine.ScriptCore/Rendering/{Renderer => Universal}/RenderPassEvent.cs (93%) rename managed/XCEngine.ScriptCore/Rendering/{Renderer => Universal}/RendererBackedRenderPipeline.cs (96%) rename managed/XCEngine.ScriptCore/Rendering/{Renderer => Universal}/RendererBackedRenderPipelineAsset.cs (96%) rename managed/XCEngine.ScriptCore/Rendering/{Renderer => Universal}/RendererDrivenRenderPipeline.cs (93%) rename managed/XCEngine.ScriptCore/Rendering/{Renderer => Universal}/RenderingData.cs (98%) rename managed/XCEngine.ScriptCore/Rendering/{Renderer => Universal}/ScriptableRenderPass.cs (98%) rename managed/XCEngine.ScriptCore/Rendering/{Renderer => Universal}/ScriptableRenderer.cs (98%) rename managed/XCEngine.ScriptCore/Rendering/{Renderer => Universal}/ScriptableRendererData.cs (98%) rename managed/XCEngine.ScriptCore/Rendering/{Renderer => Universal}/ScriptableRendererFeature.cs (93%) diff --git a/editor/src/Scripting/EditorScriptAssemblyBuilder.cpp b/editor/src/Scripting/EditorScriptAssemblyBuilder.cpp index 608d186c..a70bc67e 100644 --- a/editor/src/Scripting/EditorScriptAssemblyBuilder.cpp +++ b/editor/src/Scripting/EditorScriptAssemblyBuilder.cpp @@ -360,8 +360,7 @@ EditorScriptAssemblyBuildResult EditorScriptAssemblyBuilder::RebuildProjectAssem const std::string relativePath = sourcePath.lexically_relative(scriptCoreSourceRoot) .generic_string(); - if (relativePath.rfind("Rendering/Renderer/", 0) == 0 || - relativePath.rfind("Rendering/Universal/", 0) == 0) { + if (relativePath.rfind("Rendering/Universal/", 0) == 0) { renderPipelinesUniversalSources.push_back(sourcePath); } else { scriptCoreSources.push_back(sourcePath); diff --git a/managed/CMakeLists.txt b/managed/CMakeLists.txt index 627ce5d6..2c4d737f 100644 --- a/managed/CMakeLists.txt +++ b/managed/CMakeLists.txt @@ -197,19 +197,18 @@ set(XCENGINE_SCRIPT_CORE_SOURCES ) set(XCENGINE_RENDER_PIPELINES_UNIVERSAL_SOURCES - # Rendering renderer model - ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Renderer/RenderingData.cs - ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Renderer/RendererBackedRenderPipeline.cs - ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Renderer/RendererBackedRenderPipelineAsset.cs - ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Renderer/RendererDrivenRenderPipeline.cs - ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Renderer/RenderPassEvent.cs - ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRenderPass.cs - ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRenderer.cs - ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRendererData.cs - ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRendererFeature.cs - # First-party rendering + # Universal renderer package ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/ColorScalePostProcessRendererFeature.cs ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/DisableDirectionalShadowRendererFeature.cs + ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/RendererBackedRenderPipeline.cs + ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/RendererBackedRenderPipelineAsset.cs + ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/RendererDrivenRenderPipeline.cs + ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/RenderPassEvent.cs + ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/RenderingData.cs + ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/ScriptableRenderPass.cs + ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/ScriptableRenderer.cs + ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/ScriptableRendererData.cs + ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/ScriptableRendererFeature.cs ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderer.cs ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/UniversalRendererData.cs ${CMAKE_CURRENT_SOURCE_DIR}/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderPipelineAsset.cs diff --git a/managed/GameScripts/RenderPipelineApiProbe.cs b/managed/GameScripts/RenderPipelineApiProbe.cs index dd96a61e..54908884 100644 --- a/managed/GameScripts/RenderPipelineApiProbe.cs +++ b/managed/GameScripts/RenderPipelineApiProbe.cs @@ -1,7 +1,6 @@ using System; using XCEngine; using XCEngine.Rendering; -using XCEngine.Rendering.Renderer; using XCEngine.Rendering.Universal; namespace Gameplay diff --git a/managed/GameScripts/ScriptableRenderContextApiSurfaceProbe.cs b/managed/GameScripts/ScriptableRenderContextApiSurfaceProbe.cs index bc1e2e17..de38cacb 100644 --- a/managed/GameScripts/ScriptableRenderContextApiSurfaceProbe.cs +++ b/managed/GameScripts/ScriptableRenderContextApiSurfaceProbe.cs @@ -1,7 +1,7 @@ using System.Reflection; using XCEngine; using XCEngine.Rendering; -using XCEngine.Rendering.Renderer; +using XCEngine.Rendering.Universal; namespace Gameplay { @@ -104,10 +104,10 @@ namespace Gameplay BindingFlags.NonPublic) != null; HasRendererRecordingContextType = System.Type.GetType( - "XCEngine.Rendering.Renderer.RendererRecordingContext, XCEngine.RenderPipelines.Universal") != null; + "XCEngine.Rendering.Universal.RendererRecordingContext, XCEngine.RenderPipelines.Universal") != null; HasRendererCameraRequestContextType = System.Type.GetType( - "XCEngine.Rendering.Renderer.RendererCameraRequestContext, XCEngine.RenderPipelines.Universal") != null; + "XCEngine.Rendering.Universal.RendererCameraRequestContext, XCEngine.RenderPipelines.Universal") != null; } } } diff --git a/managed/XCEngine.ScriptCore/Rendering/Universal/ColorScalePostProcessRendererFeature.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/ColorScalePostProcessRendererFeature.cs index 4c36c3e1..eed38aa4 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Universal/ColorScalePostProcessRendererFeature.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/ColorScalePostProcessRendererFeature.cs @@ -1,6 +1,5 @@ using XCEngine; using XCEngine.Rendering; -using XCEngine.Rendering.Renderer; namespace XCEngine.Rendering.Universal { diff --git a/managed/XCEngine.ScriptCore/Rendering/Universal/DisableDirectionalShadowRendererFeature.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/DisableDirectionalShadowRendererFeature.cs index 9a9fb2fe..03b02600 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Universal/DisableDirectionalShadowRendererFeature.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/DisableDirectionalShadowRendererFeature.cs @@ -1,6 +1,5 @@ using XCEngine; using XCEngine.Rendering; -using XCEngine.Rendering.Renderer; namespace XCEngine.Rendering.Universal { diff --git a/managed/XCEngine.ScriptCore/Rendering/Renderer/RenderPassEvent.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/RenderPassEvent.cs similarity index 93% rename from managed/XCEngine.ScriptCore/Rendering/Renderer/RenderPassEvent.cs rename to managed/XCEngine.ScriptCore/Rendering/Universal/RenderPassEvent.cs index 85687583..e00383ff 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Renderer/RenderPassEvent.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/RenderPassEvent.cs @@ -1,7 +1,7 @@ using XCEngine; using XCEngine.Rendering; -namespace XCEngine.Rendering.Renderer +namespace XCEngine.Rendering.Universal { public enum RenderPassEvent { diff --git a/managed/XCEngine.ScriptCore/Rendering/Renderer/RendererBackedRenderPipeline.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/RendererBackedRenderPipeline.cs similarity index 96% rename from managed/XCEngine.ScriptCore/Rendering/Renderer/RendererBackedRenderPipeline.cs rename to managed/XCEngine.ScriptCore/Rendering/Universal/RendererBackedRenderPipeline.cs index 0818258c..3cce32fc 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Renderer/RendererBackedRenderPipeline.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/RendererBackedRenderPipeline.cs @@ -1,7 +1,7 @@ using XCEngine; using XCEngine.Rendering; -namespace XCEngine.Rendering.Renderer +namespace XCEngine.Rendering.Universal { public abstract class RendererBackedRenderPipeline : ScriptableRenderPipeline diff --git a/managed/XCEngine.ScriptCore/Rendering/Renderer/RendererBackedRenderPipelineAsset.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/RendererBackedRenderPipelineAsset.cs similarity index 96% rename from managed/XCEngine.ScriptCore/Rendering/Renderer/RendererBackedRenderPipelineAsset.cs rename to managed/XCEngine.ScriptCore/Rendering/Universal/RendererBackedRenderPipelineAsset.cs index 7661d2df..5cfd62ed 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Renderer/RendererBackedRenderPipelineAsset.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/RendererBackedRenderPipelineAsset.cs @@ -1,7 +1,7 @@ using XCEngine; using XCEngine.Rendering; -namespace XCEngine.Rendering.Renderer +namespace XCEngine.Rendering.Universal { public abstract class RendererBackedRenderPipelineAsset : ScriptableRenderPipelineAsset diff --git a/managed/XCEngine.ScriptCore/Rendering/Renderer/RendererDrivenRenderPipeline.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/RendererDrivenRenderPipeline.cs similarity index 93% rename from managed/XCEngine.ScriptCore/Rendering/Renderer/RendererDrivenRenderPipeline.cs rename to managed/XCEngine.ScriptCore/Rendering/Universal/RendererDrivenRenderPipeline.cs index efdf81bc..ae97b0a6 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Renderer/RendererDrivenRenderPipeline.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/RendererDrivenRenderPipeline.cs @@ -1,7 +1,7 @@ using XCEngine; using XCEngine.Rendering; -namespace XCEngine.Rendering.Renderer +namespace XCEngine.Rendering.Universal { public class RendererDrivenRenderPipeline : RendererBackedRenderPipeline diff --git a/managed/XCEngine.ScriptCore/Rendering/Renderer/RenderingData.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/RenderingData.cs similarity index 98% rename from managed/XCEngine.ScriptCore/Rendering/Renderer/RenderingData.cs rename to managed/XCEngine.ScriptCore/Rendering/Universal/RenderingData.cs index 66b65f30..01e9ac6a 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Renderer/RenderingData.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/RenderingData.cs @@ -1,7 +1,7 @@ using XCEngine; using XCEngine.Rendering; -namespace XCEngine.Rendering.Renderer +namespace XCEngine.Rendering.Universal { public sealed class RenderingData { diff --git a/managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRenderPass.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRenderPass.cs similarity index 98% rename from managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRenderPass.cs rename to managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRenderPass.cs index 8e31ea2f..6edcffdb 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRenderPass.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRenderPass.cs @@ -1,7 +1,7 @@ using XCEngine; using XCEngine.Rendering; -namespace XCEngine.Rendering.Renderer +namespace XCEngine.Rendering.Universal { public abstract class ScriptableRenderPass { diff --git a/managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRenderer.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRenderer.cs similarity index 98% rename from managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRenderer.cs rename to managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRenderer.cs index ecdaa876..9b087f9b 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRenderer.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRenderer.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using XCEngine; using XCEngine.Rendering; -namespace XCEngine.Rendering.Renderer +namespace XCEngine.Rendering.Universal { public abstract class ScriptableRenderer { diff --git a/managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRendererData.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRendererData.cs similarity index 98% rename from managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRendererData.cs rename to managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRendererData.cs index bc6440a8..76dee664 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRendererData.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRendererData.cs @@ -2,7 +2,7 @@ using System; using XCEngine; using XCEngine.Rendering; -namespace XCEngine.Rendering.Renderer +namespace XCEngine.Rendering.Universal { public abstract class ScriptableRendererData : Object { diff --git a/managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRendererFeature.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRendererFeature.cs similarity index 93% rename from managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRendererFeature.cs rename to managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRendererFeature.cs index 108b3a8d..fbd22d85 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Renderer/ScriptableRendererFeature.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/ScriptableRendererFeature.cs @@ -1,7 +1,7 @@ using XCEngine; using XCEngine.Rendering; -namespace XCEngine.Rendering.Renderer +namespace XCEngine.Rendering.Universal { public abstract class ScriptableRendererFeature { diff --git a/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderPipelineAsset.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderPipelineAsset.cs index 62515f42..22f66297 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderPipelineAsset.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderPipelineAsset.cs @@ -1,6 +1,5 @@ using XCEngine; using XCEngine.Rendering; -using XCEngine.Rendering.Renderer; namespace XCEngine.Rendering.Universal { diff --git a/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderer.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderer.cs index 48b32701..abfa0aa1 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderer.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRenderer.cs @@ -1,7 +1,6 @@ using System; using XCEngine; using XCEngine.Rendering; -using XCEngine.Rendering.Renderer; namespace XCEngine.Rendering.Universal { diff --git a/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRendererData.cs b/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRendererData.cs index d7e50890..e06a5ede 100644 --- a/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRendererData.cs +++ b/managed/XCEngine.ScriptCore/Rendering/Universal/UniversalRendererData.cs @@ -1,7 +1,6 @@ using System; using XCEngine; using XCEngine.Rendering; -using XCEngine.Rendering.Renderer; namespace XCEngine.Rendering.Universal {