namespace UnityEngine.XR.Content.Rendering { /// /// Specifies how a material is applied to renderer for highlighting /// public enum MaterialHighlightMode { /// Adds a new material to the renderers materials array Layer, /// Replace the renderers materials with materials Replace, } /// /// Identifies a script as one that can apply a highlight to renderers /// public interface IMaterialHighlight { /// /// How a new material will be applied to the renderer's material array. /// MaterialHighlightMode highlightMode { get; set; } /// /// Material to use for highlighting /// Material highlightMaterial { get; } /// /// Used to set up any initial values or materials /// void Initialize(); /// /// Used to remove any persistent objects /// void Deinitialize(); /// /// Raised when a highlight operations has completed /// void OnHighlight(); /// /// Raised when a un-highlight operations has completed /// /// A requested delay to transition out the highlight float OnUnhighlight(); } }