refactor(srp): move rendering data ownership into universal package

This commit is contained in:
2026-04-19 14:19:57 +08:00
parent a7cda9375a
commit f4d4112e2f
14 changed files with 325 additions and 298 deletions

View File

@@ -0,0 +1,38 @@
using XCEngine;
namespace XCEngine.Rendering.Universal
{
public sealed class LightingData
{
internal static readonly LightingData Default =
new LightingData(
DirectionalLightData.Default,
false,
0);
internal LightingData(
DirectionalLightData mainDirectionalLight,
bool hasMainDirectionalShadow,
int additionalLightCount)
{
this.mainDirectionalLight =
mainDirectionalLight ?? DirectionalLightData.Default;
this.hasMainDirectionalShadow =
hasMainDirectionalShadow;
this.additionalLightCount = additionalLightCount;
}
public DirectionalLightData mainDirectionalLight { get; }
public bool hasMainDirectionalShadow { get; }
public int additionalLightCount { get; }
public bool hasMainDirectionalLight =>
mainDirectionalLight.enabled;
public bool hasAdditionalLights =>
additionalLightCount > 0;
}
}