using System; namespace UnityEngine.PostProcessing { [Serializable] public class GrainModel : PostProcessingModel { [Serializable] public struct Settings { [Tooltip("Enable the use of colored grain.")] public bool colored; [Range(0f, 1f), Tooltip("Grain strength. Higher means more visible grain.")] public float intensity; [Range(0.3f, 3f), Tooltip("Grain particle size.")] public float size; [Range(0f, 1f), Tooltip("Controls the noisiness response curve based on scene luminance. Lower values mean less noise in dark areas.")] public float luminanceContribution; public static Settings defaultSettings { get { return new Settings { colored = true, intensity = 0.5f, size = 1f, luminanceContribution = 0.8f }; } } } [SerializeField] Settings m_Settings = Settings.defaultSettings; public Settings settings { get { return m_Settings; } set { m_Settings = value; } } public override void Reset() { m_Settings = Settings.defaultSettings; } } }