using XCEngine; namespace XCEngine.Rendering { public sealed class EnvironmentData { internal static readonly EnvironmentData Default = new EnvironmentData( RenderEnvironmentMode.None, new Color(0.18f, 0.36f, 0.74f, 1.0f), new Color(0.78f, 0.84f, 0.92f, 1.0f), new Color(0.92f, 0.93f, 0.95f, 1.0f)); internal EnvironmentData( RenderEnvironmentMode mode, Color skyboxTopColor, Color skyboxHorizonColor, Color skyboxBottomColor) { this.mode = mode; this.skyboxTopColor = skyboxTopColor; this.skyboxHorizonColor = skyboxHorizonColor; this.skyboxBottomColor = skyboxBottomColor; } public RenderEnvironmentMode mode { get; } public Color skyboxTopColor { get; } public Color skyboxHorizonColor { get; } public Color skyboxBottomColor { get; } public bool hasProceduralSkybox => mode == RenderEnvironmentMode.ProceduralSkybox; public bool hasMaterialSkybox => mode == RenderEnvironmentMode.MaterialSkybox; public bool hasSkybox => hasProceduralSkybox || hasMaterialSkybox; } }