namespace UnityEngine.Rendering.Universal { public sealed partial class Light2D { [SerializeField] int m_ShapeLightParametricSides = 5; [SerializeField] float m_ShapeLightParametricAngleOffset = 0.0f; [SerializeField] float m_ShapeLightParametricRadius = 1.0f; [SerializeField] float m_ShapeLightFalloffSize = 0.50f; [SerializeField] Vector2 m_ShapeLightFalloffOffset = Vector2.zero; [SerializeField] Vector3[] m_ShapePath = null; float m_PreviousShapeLightFalloffSize = -1; int m_PreviousShapeLightParametricSides = -1; float m_PreviousShapeLightParametricAngleOffset = -1; float m_PreviousShapeLightParametricRadius = -1; int m_PreviousShapePathHash = -1; LightType m_PreviousLightType = LightType.Parametric; /// /// The number of sides in the parametric shape. /// public int shapeLightParametricSides => m_ShapeLightParametricSides; /// /// The offset of the shape from the light's origin. /// public float shapeLightParametricAngleOffset => m_ShapeLightParametricAngleOffset; /// /// The size of the shape. /// public float shapeLightParametricRadius { get { return m_ShapeLightParametricRadius; } internal set { m_ShapeLightParametricRadius = value; } } /// /// The size of the fall-off area. Bigger value corresponds to bigger fall off size. /// public float shapeLightFalloffSize { get { return m_ShapeLightFalloffSize; } set { m_ShapeLightFalloffSize = Mathf.Max(0, value); } } /// /// Returns the path that represents the shape light. Values are in object space. /// public Vector3[] shapePath { get { return m_ShapePath; } internal set { m_ShapePath = value; } } /// /// Set the shape that represents the freeform light. Values are in object space. /// /// Array of Vector3 defining the shape. public void SetShapePath(Vector3[] path) { m_ShapePath = path; } } }