2026-04-19 05:34:43 +08:00
|
|
|
using System.Reflection;
|
|
|
|
|
using XCEngine;
|
|
|
|
|
using XCEngine.Rendering;
|
2026-04-19 14:11:25 +08:00
|
|
|
using XCEngine.Rendering.Universal;
|
2026-04-19 05:34:43 +08:00
|
|
|
|
|
|
|
|
namespace Gameplay
|
|
|
|
|
{
|
|
|
|
|
public sealed class ScriptableRenderContextApiSurfaceProbe
|
|
|
|
|
: MonoBehaviour
|
|
|
|
|
{
|
|
|
|
|
public bool HasPublicContextRecordScene;
|
2026-04-20 18:54:04 +08:00
|
|
|
public bool HasPublicContextRecordScenePhase;
|
|
|
|
|
public bool HasPublicContextRecordSceneInjectionPoint;
|
2026-04-20 22:05:38 +08:00
|
|
|
public bool HasPublicContextDrawRenderersByType;
|
|
|
|
|
public bool HasPublicContextDrawRenderersByDesc;
|
2026-04-20 18:54:04 +08:00
|
|
|
public bool HasPublicContextDrawOpaqueRenderers;
|
|
|
|
|
public bool HasPublicContextDrawTransparentRenderers;
|
2026-04-19 05:34:43 +08:00
|
|
|
public bool HasPublicContextRecordOpaqueScenePhase;
|
|
|
|
|
public bool HasPublicContextRecordBeforeOpaqueInjection;
|
|
|
|
|
public bool HasPublicContextRecordShaderVectorFullscreenPass;
|
2026-04-20 18:54:04 +08:00
|
|
|
public bool HasPublicContextSourceColorTexture;
|
|
|
|
|
public bool HasPublicContextPrimaryColorTarget;
|
|
|
|
|
public bool HasPublicContextDepthTarget;
|
|
|
|
|
public bool HasPublicContextCreateTransientTexture;
|
|
|
|
|
public bool HasPublicContextCreateFullscreenTransientColorTexture;
|
|
|
|
|
public bool HasPublicContextCreateFullscreenTransientDepthTexture;
|
|
|
|
|
public bool HasPublicContextAddRasterPass;
|
2026-04-19 13:12:26 +08:00
|
|
|
public bool HasPublicContextCameraData;
|
|
|
|
|
public bool HasPublicContextLightingData;
|
|
|
|
|
public bool HasPublicContextShadowData;
|
|
|
|
|
public bool HasPublicContextEnvironmentData;
|
|
|
|
|
public bool HasPublicContextFinalColorData;
|
|
|
|
|
public bool HasPublicContextStageColorData;
|
2026-04-19 15:20:34 +08:00
|
|
|
public bool HasPublicRequestContextHasDirectionalShadow;
|
|
|
|
|
public bool HasPublicRequestContextClearDirectionalShadow;
|
2026-04-19 14:42:57 +08:00
|
|
|
public bool HasUniversalContextRecordSceneExtension;
|
|
|
|
|
public bool HasUniversalContextRecordOpaqueScenePhaseExtension;
|
|
|
|
|
public bool HasUniversalContextRecordBeforeOpaqueInjectionExtension;
|
|
|
|
|
public bool HasUniversalContextRecordShaderVectorFullscreenPassExtension;
|
2026-04-19 15:20:34 +08:00
|
|
|
public bool HasUniversalRequestContextHasDirectionalShadowExtension;
|
|
|
|
|
public bool HasUniversalRequestContextClearDirectionalShadowExtension;
|
2026-04-19 13:47:20 +08:00
|
|
|
public bool HasPublicPipelineAssetConfigureCameraFramePlan;
|
2026-04-20 03:06:04 +08:00
|
|
|
public bool HasPipelineAssetSetDirty;
|
|
|
|
|
public bool HasPipelineAssetGetRuntimeResourceVersion;
|
2026-04-19 13:47:20 +08:00
|
|
|
public bool HasPlanningContextType;
|
|
|
|
|
public bool HasRendererFeatureConfigureCameraFramePlan;
|
2026-04-19 13:05:57 +08:00
|
|
|
public bool HasRendererRecordingContextType;
|
|
|
|
|
public bool HasRendererCameraRequestContextType;
|
2026-04-19 15:33:03 +08:00
|
|
|
public bool HasRendererBackedRenderPipelineAssetType;
|
|
|
|
|
public bool HasRendererBackedRenderPipelineType;
|
|
|
|
|
public bool HasRendererDrivenRenderPipelineType;
|
2026-04-20 02:30:07 +08:00
|
|
|
public bool HasRendererDataSetupRenderer;
|
2026-04-20 02:48:16 +08:00
|
|
|
public bool HasRendererDataSetDirty;
|
|
|
|
|
public bool HasRendererDataIsInvalidated;
|
2026-04-20 02:15:47 +08:00
|
|
|
public bool HasRendererSupportsRendererRecording;
|
|
|
|
|
public bool HasRendererRecordRenderer;
|
2026-04-19 17:00:48 +08:00
|
|
|
public bool HasPublicRendererSupportsStageRenderGraph;
|
|
|
|
|
public bool HasPublicRendererRecordStageRenderGraph;
|
2026-04-20 18:54:04 +08:00
|
|
|
public bool HasRenderGraphTextureHandleType;
|
|
|
|
|
public bool HasRenderGraphRasterPassBuilderType;
|
|
|
|
|
public bool HasRenderGraphRasterPassBuilderUseColorSource;
|
|
|
|
|
public bool HasRenderGraphRasterPassBuilderUseTexture;
|
|
|
|
|
public bool HasRenderGraphRasterPassBuilderSetColorAttachment;
|
|
|
|
|
public bool HasRenderGraphRasterPassBuilderSetColorScaleFullscreenExecution;
|
|
|
|
|
public bool HasRenderGraphRasterPassBuilderCommit;
|
|
|
|
|
public bool HasSceneRenderPhaseType;
|
|
|
|
|
public bool HasSceneRenderInjectionPointType;
|
|
|
|
|
public bool HasRendererListType;
|
2026-04-20 22:10:18 +08:00
|
|
|
public bool HasRenderQueueRangeType;
|
2026-04-20 22:05:38 +08:00
|
|
|
public bool HasRendererSortModeType;
|
|
|
|
|
public bool HasFilteringSettingsType;
|
|
|
|
|
public bool HasSortingSettingsType;
|
|
|
|
|
public bool HasRendererListDescType;
|
2026-04-19 05:34:43 +08:00
|
|
|
|
|
|
|
|
public void Start()
|
|
|
|
|
{
|
|
|
|
|
const BindingFlags PublicInstanceMethodFlags =
|
|
|
|
|
BindingFlags.Instance | BindingFlags.Public;
|
|
|
|
|
System.Type contextType =
|
|
|
|
|
typeof(ScriptableRenderContext);
|
2026-04-19 15:20:34 +08:00
|
|
|
System.Type requestContextType =
|
|
|
|
|
typeof(CameraRenderRequestContext);
|
2026-04-19 13:47:20 +08:00
|
|
|
System.Type pipelineAssetType =
|
|
|
|
|
typeof(ScriptableRenderPipelineAsset);
|
2026-04-20 18:54:04 +08:00
|
|
|
System.Type rasterPassBuilderType =
|
|
|
|
|
typeof(RenderGraphRasterPassBuilder);
|
2026-04-19 13:47:20 +08:00
|
|
|
System.Type rendererFeatureType =
|
|
|
|
|
typeof(ScriptableRendererFeature);
|
2026-04-20 02:30:07 +08:00
|
|
|
System.Type rendererDataType =
|
|
|
|
|
typeof(ScriptableRendererData);
|
2026-04-19 17:00:48 +08:00
|
|
|
System.Type rendererType =
|
|
|
|
|
typeof(ScriptableRenderer);
|
2026-04-19 14:42:57 +08:00
|
|
|
System.Type universalAssemblyType =
|
|
|
|
|
typeof(ScriptableRendererFeature);
|
|
|
|
|
System.Reflection.Assembly universalAssembly =
|
|
|
|
|
universalAssemblyType.Assembly;
|
|
|
|
|
System.Type renderContextExtensionsType =
|
|
|
|
|
universalAssembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.Universal.ScriptableRenderContextExtensions");
|
2026-04-19 15:20:34 +08:00
|
|
|
System.Type requestContextExtensionsType =
|
2026-04-19 14:42:57 +08:00
|
|
|
universalAssembly.GetType(
|
2026-04-19 15:20:34 +08:00
|
|
|
"XCEngine.Rendering.Universal.CameraRenderRequestContextExtensions");
|
2026-04-19 05:34:43 +08:00
|
|
|
|
|
|
|
|
HasPublicContextRecordScene =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"RecordScene",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
2026-04-20 18:54:04 +08:00
|
|
|
HasPublicContextRecordScenePhase =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"RecordScenePhase",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextRecordSceneInjectionPoint =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"RecordSceneInjectionPoint",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
2026-04-20 22:05:38 +08:00
|
|
|
HasPublicContextDrawRenderersByType =
|
2026-04-20 18:54:04 +08:00
|
|
|
contextType.GetMethod(
|
|
|
|
|
"DrawRenderers",
|
2026-04-20 22:05:38 +08:00
|
|
|
PublicInstanceMethodFlags,
|
|
|
|
|
null,
|
|
|
|
|
new System.Type[]
|
|
|
|
|
{
|
|
|
|
|
typeof(SceneRenderPhase),
|
|
|
|
|
typeof(RendererListType)
|
|
|
|
|
},
|
|
|
|
|
null) != null;
|
|
|
|
|
HasPublicContextDrawRenderersByDesc =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"DrawRenderers",
|
|
|
|
|
PublicInstanceMethodFlags,
|
|
|
|
|
null,
|
|
|
|
|
new System.Type[]
|
|
|
|
|
{
|
|
|
|
|
typeof(SceneRenderPhase),
|
|
|
|
|
typeof(RendererListDesc)
|
|
|
|
|
},
|
|
|
|
|
null) != null;
|
2026-04-20 18:54:04 +08:00
|
|
|
HasPublicContextDrawOpaqueRenderers =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"DrawOpaqueRenderers",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextDrawTransparentRenderers =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"DrawTransparentRenderers",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
2026-04-19 05:34:43 +08:00
|
|
|
HasPublicContextRecordOpaqueScenePhase =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"RecordOpaqueScenePhase",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextRecordBeforeOpaqueInjection =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"RecordBeforeOpaqueInjection",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextRecordShaderVectorFullscreenPass =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"RecordShaderVectorFullscreenPass",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
2026-04-20 18:54:04 +08:00
|
|
|
HasPublicContextSourceColorTexture =
|
|
|
|
|
contextType.GetProperty(
|
|
|
|
|
"sourceColorTexture",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextPrimaryColorTarget =
|
|
|
|
|
contextType.GetProperty(
|
|
|
|
|
"primaryColorTarget",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextDepthTarget =
|
|
|
|
|
contextType.GetProperty(
|
|
|
|
|
"depthTarget",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextCreateTransientTexture =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"CreateTransientTexture",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextCreateFullscreenTransientColorTexture =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"CreateFullscreenTransientColorTexture",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextCreateFullscreenTransientDepthTexture =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"CreateFullscreenTransientDepthTexture",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextAddRasterPass =
|
|
|
|
|
contextType.GetMethod(
|
|
|
|
|
"AddRasterPass",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
2026-04-19 13:12:26 +08:00
|
|
|
HasPublicContextCameraData =
|
|
|
|
|
contextType.GetProperty(
|
|
|
|
|
"cameraData",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextLightingData =
|
|
|
|
|
contextType.GetProperty(
|
|
|
|
|
"lightingData",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextShadowData =
|
|
|
|
|
contextType.GetProperty(
|
|
|
|
|
"shadowData",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextEnvironmentData =
|
|
|
|
|
contextType.GetProperty(
|
|
|
|
|
"environmentData",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextFinalColorData =
|
|
|
|
|
contextType.GetProperty(
|
|
|
|
|
"finalColorData",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicContextStageColorData =
|
|
|
|
|
contextType.GetProperty(
|
|
|
|
|
"stageColorData",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
2026-04-19 15:20:34 +08:00
|
|
|
HasPublicRequestContextHasDirectionalShadow =
|
|
|
|
|
requestContextType.GetProperty(
|
2026-04-19 05:34:43 +08:00
|
|
|
"hasDirectionalShadow",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
2026-04-19 15:20:34 +08:00
|
|
|
HasPublicRequestContextClearDirectionalShadow =
|
|
|
|
|
requestContextType.GetMethod(
|
2026-04-19 05:34:43 +08:00
|
|
|
"ClearDirectionalShadow",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
2026-04-19 14:42:57 +08:00
|
|
|
HasUniversalContextRecordSceneExtension =
|
|
|
|
|
renderContextExtensionsType != null &&
|
|
|
|
|
renderContextExtensionsType.GetMethod(
|
|
|
|
|
"RecordScene",
|
|
|
|
|
BindingFlags.Static | BindingFlags.Public) != null;
|
|
|
|
|
HasUniversalContextRecordOpaqueScenePhaseExtension =
|
|
|
|
|
renderContextExtensionsType != null &&
|
|
|
|
|
renderContextExtensionsType.GetMethod(
|
|
|
|
|
"RecordOpaqueScenePhase",
|
|
|
|
|
BindingFlags.Static | BindingFlags.Public) != null;
|
|
|
|
|
HasUniversalContextRecordBeforeOpaqueInjectionExtension =
|
|
|
|
|
renderContextExtensionsType != null &&
|
|
|
|
|
renderContextExtensionsType.GetMethod(
|
|
|
|
|
"RecordBeforeOpaqueInjection",
|
|
|
|
|
BindingFlags.Static | BindingFlags.Public) != null;
|
|
|
|
|
HasUniversalContextRecordShaderVectorFullscreenPassExtension =
|
|
|
|
|
renderContextExtensionsType != null &&
|
|
|
|
|
renderContextExtensionsType.GetMethod(
|
|
|
|
|
"RecordShaderVectorFullscreenPass",
|
|
|
|
|
BindingFlags.Static | BindingFlags.Public) != null;
|
2026-04-19 15:20:34 +08:00
|
|
|
HasUniversalRequestContextHasDirectionalShadowExtension =
|
|
|
|
|
requestContextExtensionsType != null &&
|
|
|
|
|
requestContextExtensionsType.GetMethod(
|
2026-04-19 14:42:57 +08:00
|
|
|
"HasDirectionalShadow",
|
|
|
|
|
BindingFlags.Static | BindingFlags.Public) != null;
|
2026-04-19 15:20:34 +08:00
|
|
|
HasUniversalRequestContextClearDirectionalShadowExtension =
|
|
|
|
|
requestContextExtensionsType != null &&
|
|
|
|
|
requestContextExtensionsType.GetMethod(
|
2026-04-19 14:42:57 +08:00
|
|
|
"ClearDirectionalShadow",
|
|
|
|
|
BindingFlags.Static | BindingFlags.Public) != null;
|
2026-04-19 13:47:20 +08:00
|
|
|
HasPublicPipelineAssetConfigureCameraFramePlan =
|
|
|
|
|
pipelineAssetType.GetMethod(
|
|
|
|
|
"ConfigureCameraFramePlan",
|
|
|
|
|
BindingFlags.Instance |
|
|
|
|
|
BindingFlags.Public |
|
|
|
|
|
BindingFlags.NonPublic) != null;
|
2026-04-20 03:06:04 +08:00
|
|
|
HasPipelineAssetSetDirty =
|
|
|
|
|
pipelineAssetType.GetMethod(
|
|
|
|
|
"SetDirty",
|
|
|
|
|
BindingFlags.Instance |
|
|
|
|
|
BindingFlags.NonPublic) != null;
|
|
|
|
|
HasPipelineAssetGetRuntimeResourceVersion =
|
|
|
|
|
pipelineAssetType.GetMethod(
|
|
|
|
|
"GetRuntimeResourceVersionInstance",
|
|
|
|
|
BindingFlags.Instance |
|
|
|
|
|
BindingFlags.NonPublic) != null;
|
2026-04-19 13:47:20 +08:00
|
|
|
HasPlanningContextType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.ScriptableRenderPipelinePlanningContext") != null;
|
|
|
|
|
HasRendererFeatureConfigureCameraFramePlan =
|
|
|
|
|
rendererFeatureType.GetMethod(
|
|
|
|
|
"ConfigureCameraFramePlan",
|
|
|
|
|
BindingFlags.Instance |
|
|
|
|
|
BindingFlags.Public |
|
|
|
|
|
BindingFlags.NonPublic) != null;
|
2026-04-19 13:05:57 +08:00
|
|
|
HasRendererRecordingContextType =
|
|
|
|
|
System.Type.GetType(
|
2026-04-19 14:11:25 +08:00
|
|
|
"XCEngine.Rendering.Universal.RendererRecordingContext, XCEngine.RenderPipelines.Universal") != null;
|
2026-04-19 13:05:57 +08:00
|
|
|
HasRendererCameraRequestContextType =
|
|
|
|
|
System.Type.GetType(
|
2026-04-19 14:11:25 +08:00
|
|
|
"XCEngine.Rendering.Universal.RendererCameraRequestContext, XCEngine.RenderPipelines.Universal") != null;
|
2026-04-19 15:33:03 +08:00
|
|
|
HasRendererBackedRenderPipelineAssetType =
|
|
|
|
|
System.Type.GetType(
|
|
|
|
|
"XCEngine.Rendering.Universal.RendererBackedRenderPipelineAsset, XCEngine.RenderPipelines.Universal") != null;
|
|
|
|
|
HasRendererBackedRenderPipelineType =
|
|
|
|
|
System.Type.GetType(
|
|
|
|
|
"XCEngine.Rendering.Universal.RendererBackedRenderPipeline, XCEngine.RenderPipelines.Universal") != null;
|
|
|
|
|
HasRendererDrivenRenderPipelineType =
|
|
|
|
|
System.Type.GetType(
|
|
|
|
|
"XCEngine.Rendering.Universal.RendererDrivenRenderPipeline, XCEngine.RenderPipelines.Universal") != null;
|
2026-04-20 02:30:07 +08:00
|
|
|
HasRendererDataSetupRenderer =
|
|
|
|
|
rendererDataType.GetMethod(
|
|
|
|
|
"SetupRenderer",
|
|
|
|
|
BindingFlags.Instance |
|
|
|
|
|
BindingFlags.NonPublic) != null;
|
2026-04-20 02:48:16 +08:00
|
|
|
HasRendererDataSetDirty =
|
|
|
|
|
rendererDataType.GetMethod(
|
|
|
|
|
"SetDirty",
|
|
|
|
|
BindingFlags.Instance |
|
|
|
|
|
BindingFlags.NonPublic) != null;
|
|
|
|
|
HasRendererDataIsInvalidated =
|
|
|
|
|
rendererDataType.GetProperty(
|
|
|
|
|
"isInvalidated",
|
|
|
|
|
BindingFlags.Instance |
|
|
|
|
|
BindingFlags.NonPublic |
|
|
|
|
|
BindingFlags.Public) != null;
|
2026-04-20 02:15:47 +08:00
|
|
|
HasRendererSupportsRendererRecording =
|
|
|
|
|
rendererType.GetMethod(
|
|
|
|
|
"SupportsRendererRecording",
|
|
|
|
|
BindingFlags.Instance |
|
|
|
|
|
BindingFlags.NonPublic) != null;
|
|
|
|
|
HasRendererRecordRenderer =
|
|
|
|
|
rendererType.GetMethod(
|
|
|
|
|
"RecordRenderer",
|
|
|
|
|
BindingFlags.Instance |
|
|
|
|
|
BindingFlags.NonPublic) != null;
|
2026-04-19 17:00:48 +08:00
|
|
|
HasPublicRendererSupportsStageRenderGraph =
|
|
|
|
|
rendererType.GetMethod(
|
|
|
|
|
"SupportsStageRenderGraph",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasPublicRendererRecordStageRenderGraph =
|
|
|
|
|
rendererType.GetMethod(
|
|
|
|
|
"RecordStageRenderGraph",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
2026-04-20 18:54:04 +08:00
|
|
|
HasRenderGraphTextureHandleType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.RenderGraphTextureHandle") != null;
|
|
|
|
|
HasRenderGraphRasterPassBuilderType =
|
|
|
|
|
rasterPassBuilderType != null;
|
|
|
|
|
HasRenderGraphRasterPassBuilderUseColorSource =
|
|
|
|
|
rasterPassBuilderType.GetMethod(
|
|
|
|
|
"UseColorSource",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasRenderGraphRasterPassBuilderUseTexture =
|
|
|
|
|
rasterPassBuilderType.GetMethod(
|
|
|
|
|
"UseTexture",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasRenderGraphRasterPassBuilderSetColorAttachment =
|
|
|
|
|
rasterPassBuilderType.GetMethod(
|
|
|
|
|
"SetColorAttachment",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasRenderGraphRasterPassBuilderSetColorScaleFullscreenExecution =
|
|
|
|
|
rasterPassBuilderType.GetMethod(
|
|
|
|
|
"SetColorScaleFullscreenExecution",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasRenderGraphRasterPassBuilderCommit =
|
|
|
|
|
rasterPassBuilderType.GetMethod(
|
|
|
|
|
"Commit",
|
|
|
|
|
PublicInstanceMethodFlags) != null;
|
|
|
|
|
HasSceneRenderPhaseType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.SceneRenderPhase") != null;
|
|
|
|
|
HasSceneRenderInjectionPointType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.SceneRenderInjectionPoint") != null;
|
|
|
|
|
HasRendererListType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.RendererListType") != null;
|
2026-04-20 22:10:18 +08:00
|
|
|
HasRenderQueueRangeType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.RenderQueueRange") != null;
|
2026-04-20 22:05:38 +08:00
|
|
|
HasRendererSortModeType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.RendererSortMode") != null;
|
|
|
|
|
HasFilteringSettingsType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.FilteringSettings") != null;
|
|
|
|
|
HasSortingSettingsType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.SortingSettings") != null;
|
|
|
|
|
HasRendererListDescType =
|
|
|
|
|
contextType.Assembly.GetType(
|
|
|
|
|
"XCEngine.Rendering.RendererListDesc") != null;
|
2026-04-19 05:34:43 +08:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|