feat(rendering): expose managed SRP asset final color defaults

This commit is contained in:
2026-04-18 16:19:54 +08:00
parent 5fd474d08d
commit 849625e732
11 changed files with 280 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
namespace XCEngine
{
public enum FinalColorExposureMode : byte
{
Disabled = 0,
Fixed = 1
}
}

View File

@@ -0,0 +1,8 @@
namespace XCEngine
{
public enum FinalColorOutputTransferMode : byte
{
Disabled = 0,
LinearToSRGB = 1
}
}

View File

@@ -0,0 +1,22 @@
using System.Runtime.InteropServices;
namespace XCEngine
{
[StructLayout(LayoutKind.Sequential)]
public struct FinalColorSettings
{
public FinalColorOutputTransferMode outputTransferMode;
public FinalColorExposureMode exposureMode;
public float exposureValue;
public FinalColorToneMappingMode toneMappingMode;
public Vector4 finalColorScale;
public static FinalColorSettings CreateDefault()
{
FinalColorSettings settings = new FinalColorSettings();
settings.exposureValue = 1.0f;
settings.finalColorScale = new Vector4(1.0f, 1.0f, 1.0f, 1.0f);
return settings;
}
}
}

View File

@@ -0,0 +1,9 @@
namespace XCEngine
{
public enum FinalColorToneMappingMode : byte
{
Disabled = 0,
Neutral = 1,
ACES = 2
}
}

View File

@@ -20,5 +20,10 @@ namespace XCEngine
ScriptableRenderPipelinePlanningContext context)
{
}
protected internal virtual FinalColorSettings GetDefaultFinalColorSettings()
{
return FinalColorSettings.CreateDefault();
}
}
}