using System; using UnityEngine; using UnityEngine.Rendering; using UnityEngine.Rendering.Universal; namespace kTools.Motion { [Serializable, VolumeComponentMenu("kMotion/Motion Blur")] public sealed class MotionBlur: VolumeComponent, IPostProcessComponent { /// /// The quality of the effect. Lower presets will result in better performance at the expense of visual quality. /// [Tooltip("The quality of the effect. Lower presets will result in better performance at the expense of visual quality.")] public MotionBlurQualityParameter quality = new MotionBlurQualityParameter(MotionBlurQuality.Low); /// /// The strength of the motion blur filter. Acts as a multiplier for velocities. /// [Tooltip("The strength of the motion blur filter. Acts as a multiplier for velocities.")] public ClampedFloatParameter intensity = new ClampedFloatParameter(0f, 0f, 1f); /// /// Is the component active? /// /// True is the component is active public bool IsActive() => intensity.value > 0f; /// /// Is the component compatible with on tile rendering /// /// false public bool IsTileCompatible() => false; } }