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;
}
}