67 lines
1.5 KiB
C#
67 lines
1.5 KiB
C#
using System;
|
|
|
|
namespace UnityEngine.PostProcessing
|
|
{
|
|
[Serializable]
|
|
public class FogModel : PostProcessingModel
|
|
{
|
|
[Serializable]
|
|
public struct Settings
|
|
{
|
|
[Tooltip("Controls the color of that fog drawn in the scene.")]
|
|
public Color color;
|
|
|
|
[Tooltip("Controls the mathematical function determining the way fog accumulates with distance from the camera. Options are Linear, Exponential and Exponential Squared.")]
|
|
public FogMode mode;
|
|
|
|
[Tooltip("Controls the density of the fog effect in the Scene when using Exponential or Exponential Squared modes.")]
|
|
public float density;
|
|
|
|
[Tooltip("Controls the distance from the camera where the fog will start in the scene.")]
|
|
public float start;
|
|
|
|
[Tooltip("Controls the distance from the camera where the fog will completely obscure objects in the Scene.")]
|
|
public float end;
|
|
|
|
[Tooltip("Should the fog affect the skybox?")]
|
|
public bool excludeSkybox;
|
|
|
|
public static Settings defaultSettings
|
|
{
|
|
get
|
|
{
|
|
return new Settings
|
|
{
|
|
color = new Color32(102, 108, 113, 154),
|
|
mode = FogMode.Exponential,
|
|
density = 0.001f,
|
|
start = 0f,
|
|
end = 600f,
|
|
excludeSkybox = true
|
|
};
|
|
}
|
|
}
|
|
}
|
|
|
|
[SerializeField]
|
|
private Settings m_Settings = Settings.defaultSettings;
|
|
|
|
public Settings settings
|
|
{
|
|
get
|
|
{
|
|
return m_Settings;
|
|
}
|
|
set
|
|
{
|
|
m_Settings = value;
|
|
}
|
|
}
|
|
|
|
public override void Reset()
|
|
{
|
|
m_Settings = Settings.defaultSettings;
|
|
}
|
|
}
|
|
}
|