using System; namespace UnityEngine.PostProcessing { [Serializable] public class MotionBlurModel : PostProcessingModel { public MotionBlurModel.Settings settings { get { return this.m_Settings; } set { this.m_Settings = value; } } public override void Reset() { this.m_Settings = MotionBlurModel.Settings.defaultSettings; } [SerializeField] private MotionBlurModel.Settings m_Settings = MotionBlurModel.Settings.defaultSettings; [Serializable] public struct Settings { public static MotionBlurModel.Settings defaultSettings { get { return new MotionBlurModel.Settings { shutterAngle = 270f, sampleCount = 10, frameBlending = 0f }; } } [Range(0f, 360f)] [Tooltip("The angle of rotary shutter. Larger values give longer exposure.")] public float shutterAngle; [Range(4f, 32f)] [Tooltip("The amount of sample points, which affects quality and performances.")] public int sampleCount; [Range(0f, 1f)] [Tooltip("The strength of multiple frame blending. The opacity of preceding frames are determined from this coefficient and time differences.")] public float frameBlending; } } }