Align SRP boundaries and editor windowing
This commit is contained in:
@@ -904,12 +904,6 @@ namespace XCEngine
|
||||
string shaderPassName,
|
||||
ref Rendering.RenderStateBlock renderStateBlock);
|
||||
|
||||
[MethodImpl(MethodImplOptions.InternalCall)]
|
||||
internal static extern bool
|
||||
Rendering_ScriptableRenderContext_RecordSceneInjectionPoint(
|
||||
ulong nativeHandle,
|
||||
int injectionPoint);
|
||||
|
||||
[MethodImpl(MethodImplOptions.InternalCall)]
|
||||
internal static extern int
|
||||
Rendering_CameraRenderRequestContext_GetRenderedBaseCameraCount(
|
||||
|
||||
@@ -53,7 +53,7 @@ namespace XCEngine.Rendering
|
||||
value);
|
||||
}
|
||||
|
||||
public bool hasDirectionalShadow =>
|
||||
internal bool hasDirectionalShadow =>
|
||||
InternalCalls
|
||||
.Rendering_CameraRenderRequestContext_GetHasDirectionalShadow(
|
||||
m_nativeHandle);
|
||||
@@ -78,7 +78,7 @@ namespace XCEngine.Rendering
|
||||
}
|
||||
}
|
||||
|
||||
public void ClearDirectionalShadow()
|
||||
internal void ClearDirectionalShadow()
|
||||
{
|
||||
InternalCalls
|
||||
.Rendering_CameraRenderRequestContext_ClearDirectionalShadow(
|
||||
|
||||
@@ -2,7 +2,7 @@ using XCEngine;
|
||||
|
||||
namespace XCEngine.Rendering
|
||||
{
|
||||
// SRP v1 managed recording surface. Scene recording still delegates to the
|
||||
// SRP v1 managed recording surface. Scene draws still delegate to the
|
||||
// native SceneDrawBackend, and raster-pass recording is limited to the
|
||||
// fullscreen PostProcess / FinalOutput stages.
|
||||
public sealed class ScriptableRenderContext
|
||||
@@ -41,23 +41,14 @@ namespace XCEngine.Rendering
|
||||
.Rendering_ScriptableRenderContext_GetDepthTargetHandle(
|
||||
m_nativeHandle));
|
||||
|
||||
// Records the default native scene sequence for MainScene or explicit
|
||||
// scene-pass-request stages. This does not replace the native scene
|
||||
// extraction / culling / draw backend.
|
||||
public bool RecordScene()
|
||||
internal bool RecordScene()
|
||||
{
|
||||
return RecordBeforeOpaqueInjection() &&
|
||||
DrawOpaqueRenderers() &&
|
||||
RecordAfterOpaqueInjection() &&
|
||||
RecordBeforeSkyboxInjection() &&
|
||||
return DrawOpaqueRenderers() &&
|
||||
DrawSkybox() &&
|
||||
RecordAfterSkyboxInjection() &&
|
||||
RecordBeforeTransparentInjection() &&
|
||||
DrawTransparentRenderers() &&
|
||||
RecordAfterTransparentInjection();
|
||||
DrawTransparentRenderers();
|
||||
}
|
||||
|
||||
public bool RecordScenePhase(
|
||||
internal bool RecordScenePhase(
|
||||
SceneRenderPhase scenePhase)
|
||||
{
|
||||
return InternalCalls
|
||||
@@ -66,15 +57,6 @@ namespace XCEngine.Rendering
|
||||
(int)scenePhase);
|
||||
}
|
||||
|
||||
public bool RecordSceneInjectionPoint(
|
||||
SceneRenderInjectionPoint injectionPoint)
|
||||
{
|
||||
return InternalCalls
|
||||
.Rendering_ScriptableRenderContext_RecordSceneInjectionPoint(
|
||||
m_nativeHandle,
|
||||
(int)injectionPoint);
|
||||
}
|
||||
|
||||
public bool DrawRenderers(
|
||||
SceneRenderPhase scenePhase,
|
||||
RendererListType rendererListType)
|
||||
@@ -126,66 +108,12 @@ namespace XCEngine.Rendering
|
||||
ref renderStateBlock);
|
||||
}
|
||||
|
||||
public bool RecordOpaqueScenePhase()
|
||||
{
|
||||
return RecordScenePhase(
|
||||
SceneRenderPhase.Opaque);
|
||||
}
|
||||
|
||||
public bool RecordSkyboxScenePhase()
|
||||
{
|
||||
return RecordScenePhase(
|
||||
SceneRenderPhase.Skybox);
|
||||
}
|
||||
|
||||
public bool DrawSkybox()
|
||||
{
|
||||
return RecordScenePhase(
|
||||
SceneRenderPhase.Skybox);
|
||||
}
|
||||
|
||||
public bool RecordTransparentScenePhase()
|
||||
{
|
||||
return RecordScenePhase(
|
||||
SceneRenderPhase.Transparent);
|
||||
}
|
||||
|
||||
public bool RecordBeforeOpaqueInjection()
|
||||
{
|
||||
return RecordSceneInjectionPoint(
|
||||
SceneRenderInjectionPoint.BeforeOpaque);
|
||||
}
|
||||
|
||||
public bool RecordAfterOpaqueInjection()
|
||||
{
|
||||
return RecordSceneInjectionPoint(
|
||||
SceneRenderInjectionPoint.AfterOpaque);
|
||||
}
|
||||
|
||||
public bool RecordBeforeSkyboxInjection()
|
||||
{
|
||||
return RecordSceneInjectionPoint(
|
||||
SceneRenderInjectionPoint.BeforeSkybox);
|
||||
}
|
||||
|
||||
public bool RecordAfterSkyboxInjection()
|
||||
{
|
||||
return RecordSceneInjectionPoint(
|
||||
SceneRenderInjectionPoint.AfterSkybox);
|
||||
}
|
||||
|
||||
public bool RecordBeforeTransparentInjection()
|
||||
{
|
||||
return RecordSceneInjectionPoint(
|
||||
SceneRenderInjectionPoint.BeforeTransparent);
|
||||
}
|
||||
|
||||
public bool RecordAfterTransparentInjection()
|
||||
{
|
||||
return RecordSceneInjectionPoint(
|
||||
SceneRenderInjectionPoint.AfterTransparent);
|
||||
}
|
||||
|
||||
public bool DrawOpaqueRenderers()
|
||||
{
|
||||
return DrawRenderers(
|
||||
|
||||
Reference in New Issue
Block a user