private void InitialiseHighlighter() { var existingHighlighter = Utilities.GetActiveHighlighter(gameObject); //If no highlighter is found on the GameObject then create the default one if (existingHighlighter == null) { highlightObject.AddComponent <VRTK_MaterialColorSwapHighlighter>(); } else { Utilities.CloneComponent(existingHighlighter, highlightObject); } //Initialise highlighter and set highlight colour objectHighlighter = highlightObject.GetComponent <VRTK_BaseHighlighter>(); objectHighlighter.Initialise(highlightColor); objectHighlighter.Highlight(highlightColor); //if the object highlighter is using a cloned object then disable the created highlight object's renderers if (objectHighlighter.UsesClonedObject()) { foreach (var renderer in GetComponentsInChildren <Renderer>(true)) { var check = renderer.GetComponent <VRTK_PlayerObject>(); if (!check || check.objectType != VRTK_PlayerObject.ObjectTypes.Highlighter) { renderer.enabled = false; } } } }
protected virtual void InitialiseHighlighter() { if (highlightOnTouch) { autoHighlighter = false; objectHighlighter = Utilities.GetActiveHighlighter(gameObject); if (objectHighlighter == null) { autoHighlighter = true; objectHighlighter = gameObject.AddComponent <VRTK_MaterialColorSwapHighlighter>(); } objectHighlighter.Initialise(touchHighlightColor); } }
/// <summary> /// The InitaliseHighlighters method sets up the highlighters on the controller model. /// </summary> public void InitaliseHighlighters() { highlighterOptions = new Dictionary <string, object>(); highlighterOptions.Add("resetMainTexture", true); VRTK_BaseHighlighter objectHighlighter = Utilities.GetActiveHighlighter(gameObject); if (objectHighlighter == null) { objectHighlighter = gameObject.AddComponent <VRTK_MaterialColorSwapHighlighter>(); } objectHighlighter.Initialise(null, highlighterOptions); AddHighlighterToElement(GetElementTransform(VRTK_SDK_Bridge.GetControllerElementPath(SDK_Base.ControllerElelements.ApplicationMenu)), objectHighlighter, elementHighlighterOverrides.appMenu); AddHighlighterToElement(GetElementTransform(VRTK_SDK_Bridge.GetControllerElementPath(SDK_Base.ControllerElelements.Body)), objectHighlighter, elementHighlighterOverrides.body); AddHighlighterToElement(GetElementTransform(VRTK_SDK_Bridge.GetControllerElementPath(SDK_Base.ControllerElelements.GripLeft)), objectHighlighter, elementHighlighterOverrides.gripLeft); AddHighlighterToElement(GetElementTransform(VRTK_SDK_Bridge.GetControllerElementPath(SDK_Base.ControllerElelements.GripRight)), objectHighlighter, elementHighlighterOverrides.gripRight); AddHighlighterToElement(GetElementTransform(VRTK_SDK_Bridge.GetControllerElementPath(SDK_Base.ControllerElelements.SystemMenu)), objectHighlighter, elementHighlighterOverrides.systemMenu); AddHighlighterToElement(GetElementTransform(VRTK_SDK_Bridge.GetControllerElementPath(SDK_Base.ControllerElelements.Touchpad)), objectHighlighter, elementHighlighterOverrides.touchpad); AddHighlighterToElement(GetElementTransform(VRTK_SDK_Bridge.GetControllerElementPath(SDK_Base.ControllerElelements.Trigger)), objectHighlighter, elementHighlighterOverrides.trigger); }