refactor(rendering/srp): unify managed fullscreen raster recording

This commit is contained in:
2026-04-20 18:26:47 +08:00
parent 3e32f82e37
commit b521616e27
5 changed files with 1426 additions and 67 deletions

View File

@@ -389,6 +389,90 @@ namespace XCEngine
internal static extern int Rendering_ScriptableRenderContext_GetStage(
ulong nativeHandle);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern int
Rendering_ScriptableRenderContext_GetSourceColorTextureHandle(
ulong nativeHandle);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern int
Rendering_ScriptableRenderContext_GetPrimaryColorTargetHandle(
ulong nativeHandle);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern int
Rendering_ScriptableRenderContext_GetDepthTargetHandle(
ulong nativeHandle);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern int
Rendering_ScriptableRenderContext_CreateTransientTexture(
ulong nativeHandle,
string name,
ref Rendering.RenderGraphTextureDesc desc);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern int
Rendering_ScriptableRenderContext_CreateFullscreenTransientColorTexture(
ulong nativeHandle,
string name);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern int
Rendering_ScriptableRenderContext_CreateFullscreenTransientDepthTexture(
ulong nativeHandle,
string name);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern ulong
Rendering_ScriptableRenderContext_BeginRasterPass(
ulong nativeHandle,
string passName);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern bool
Rendering_ScriptableRenderContext_SetRasterPassSourceColorTexture(
ulong nativeHandle,
ulong rasterPassHandle,
int sourceTextureHandle);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern bool
Rendering_ScriptableRenderContext_AddRasterPassReadTexture(
ulong nativeHandle,
ulong rasterPassHandle,
int textureHandle);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern bool
Rendering_ScriptableRenderContext_SetRasterPassColorAttachment(
ulong nativeHandle,
ulong rasterPassHandle,
int colorAttachmentIndex,
int textureHandle);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern bool
Rendering_ScriptableRenderContext_SetRasterPassColorScaleFullscreenExecution(
ulong nativeHandle,
ulong rasterPassHandle,
ref Vector4 vectorPayload);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern bool
Rendering_ScriptableRenderContext_SetRasterPassShaderVectorFullscreenExecution(
ulong nativeHandle,
ulong rasterPassHandle,
string shaderPath,
string shaderPassName,
ref Vector4 vectorPayload);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern bool
Rendering_ScriptableRenderContext_CommitRasterPass(
ulong nativeHandle,
ulong rasterPassHandle);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern bool
Rendering_ScriptableRenderPipelinePlanningContext_IsStageRequested(
@@ -703,15 +787,6 @@ namespace XCEngine
ulong nativeHandle,
int injectionPoint);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern bool
Rendering_ScriptableRenderContext_RecordFullscreenPass(
ulong nativeHandle,
int passType,
string shaderPath,
string passName,
ref Vector4 vectorPayload);
[MethodImpl(MethodImplOptions.InternalCall)]
internal static extern int
Rendering_CameraRenderRequestContext_GetRenderedBaseCameraCount(