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