static MySSAOSettings() { Default = new MySSAOSettings() { Enabled = false, UseBlur = true, Data = Layout.Default, }; }
public static void InitEnvironmentSettings(MyObjectBuilder_EnvironmentSettings environmentBuilder = null) { if (environmentBuilder != null) { EnvironmentDefinition = MyDefinitionManager.Static.GetDefinition<MyEnvironmentDefinition>(environmentBuilder.EnvironmentDefinition); } else if (EnvironmentDefinition == null) { // Fallback EnvironmentDefinition = MyDefinitionManager.Static.GetDefinition<MyEnvironmentDefinition>(MyStringHash.GetOrCompute("Default")); } var environment = EnvironmentDefinition; SunProperties = environment.SunProperties; FogProperties = environment.FogProperties; SSAOSettings = environment.SSAOSettings; HBAOSettings = environment.HBAOSettings; ShadowSettings.CopyFrom(environment.ShadowSettings); SunRotationAxis = SunProperties.SunRotationAxis; MyRenderProxy.UpdateShadowsSettings(ShadowSettings); // TODO: Delete MyPostprocessSettingsWrapper and move to have bundled // settings in MySector and change all references to point here MyPostprocessSettingsWrapper.Settings = environment.PostProcessSettings; MyPostprocessSettingsWrapper.PlanetSettings = environment.PostProcessSettings; if (environmentBuilder != null) { Vector3 sunDirection; Vector3.CreateFromAzimuthAndElevation(environmentBuilder.SunAzimuth, environmentBuilder.SunElevation, out sunDirection); sunDirection.Normalize(); SunProperties.BaseSunDirectionNormalized = sunDirection; SunProperties.SunDirectionNormalized = sunDirection; //SunProperties.SunIntensity = environmentBuilder.SunIntensity; FogProperties.FogMultiplier = environmentBuilder.FogMultiplier; FogProperties.FogDensity = environmentBuilder.FogDensity; FogProperties.FogColor = new Color(environmentBuilder.FogColor); } }
protected override void Init(MyObjectBuilder_DefinitionBase builder) { base.Init(builder); MyObjectBuilder_EnvironmentDefinition objBuilder = (MyObjectBuilder_EnvironmentDefinition)builder; FogProperties = objBuilder.FogProperties; SunProperties = objBuilder.SunProperties; PostProcessSettings = objBuilder.PostProcessSettings; SSAOSettings = objBuilder.SSAOSettings; HBAOSettings = objBuilder.HBAOSettings; ShadowSettings.CopyFrom(objBuilder.ShadowSettings); SmallShipMaxSpeed = objBuilder.SmallShipMaxSpeed; LargeShipMaxSpeed = objBuilder.LargeShipMaxSpeed; SmallShipMaxAngularSpeed = objBuilder.SmallShipMaxAngularSpeed; LargeShipMaxAngularSpeed = objBuilder.LargeShipMaxAngularSpeed; ContourHighlightColor = new Color(objBuilder.ContourHighlightColor); ContourHighlightThickness = objBuilder.ContourHighlightThickness; HighlightPulseInSeconds = objBuilder.HighlightPulseInSeconds; EnvironmentTexture = objBuilder.EnvironmentTexture; EnvironmentOrientation = objBuilder.EnvironmentOrientation; }
public static void UpdateSSAOSettings(ref MySSAOSettings settings) { var message = MessagePool.Get<MyRenderMessageUpdateSSAOSettings>(MyRenderMessageEnum.UpdateSSAOSettings); message.Settings = settings; EnqueueMessage(message); }