feat(scripting): add managed srp base api
This commit is contained in:
15
managed/XCEngine.ScriptCore/CameraFrameStage.cs
Normal file
15
managed/XCEngine.ScriptCore/CameraFrameStage.cs
Normal file
@@ -0,0 +1,15 @@
|
||||
namespace XCEngine
|
||||
{
|
||||
public enum CameraFrameStage : byte
|
||||
{
|
||||
PreScenePasses = 0,
|
||||
ShadowCaster = 1,
|
||||
DepthOnly = 2,
|
||||
MainScene = 3,
|
||||
PostProcess = 4,
|
||||
FinalOutput = 5,
|
||||
ObjectId = 6,
|
||||
PostScenePasses = 7,
|
||||
OverlayPasses = 8
|
||||
}
|
||||
}
|
||||
@@ -20,10 +20,10 @@ namespace XCEngine
|
||||
set
|
||||
{
|
||||
if (value != null &&
|
||||
!typeof(RenderPipelineAsset).IsAssignableFrom(value))
|
||||
!typeof(ScriptableRenderPipelineAsset).IsAssignableFrom(value))
|
||||
{
|
||||
throw new ArgumentException(
|
||||
"GraphicsSettings.renderPipelineAssetType must derive from RenderPipelineAsset.",
|
||||
"GraphicsSettings.renderPipelineAssetType must derive from ScriptableRenderPipelineAsset.",
|
||||
nameof(value));
|
||||
}
|
||||
|
||||
|
||||
21
managed/XCEngine.ScriptCore/ScriptableRenderPipeline.cs
Normal file
21
managed/XCEngine.ScriptCore/ScriptableRenderPipeline.cs
Normal file
@@ -0,0 +1,21 @@
|
||||
namespace XCEngine
|
||||
{
|
||||
public abstract class ScriptableRenderPipeline : Object
|
||||
{
|
||||
protected ScriptableRenderPipeline()
|
||||
{
|
||||
}
|
||||
|
||||
protected internal virtual bool SupportsStageRenderGraph(
|
||||
CameraFrameStage stage)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
protected internal virtual bool RecordStageRenderGraph(
|
||||
CameraFrameStage stage)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
14
managed/XCEngine.ScriptCore/ScriptableRenderPipelineAsset.cs
Normal file
14
managed/XCEngine.ScriptCore/ScriptableRenderPipelineAsset.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
namespace XCEngine
|
||||
{
|
||||
public abstract class ScriptableRenderPipelineAsset : RenderPipelineAsset
|
||||
{
|
||||
protected ScriptableRenderPipelineAsset()
|
||||
{
|
||||
}
|
||||
|
||||
protected internal virtual ScriptableRenderPipeline CreatePipeline()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user