using System; namespace UnityEngine.Rendering.HighDefinition { /// /// This defines which ray casting technique should be used. /// public enum RayCastingMode { /// /// When selected, ray marching is used to evaluate ray intersections. /// [InspectorName("Ray Marching")] RayMarching = 1 << 0, /// /// When selected, ray tracing is used to evaluate ray intersections. /// [InspectorName("Ray Tracing")] RayTracing = 1 << 1, /// /// When selected, both ray marching and ray tracing are used to evaluate ray intersections. /// [InspectorName("Mixed")] Mixed = 1 << 2, } /// /// A that holds a value. /// [Serializable] public sealed class RayCastingModeParameter : VolumeParameter { /// /// Creates a new instance. /// /// The initial value to store in the parameter. /// The initial override state for the parameter. public RayCastingModeParameter(RayCastingMode value, bool overrideState = false) : base(value, overrideState) { } } }