コード例 #1
0
        protected virtual IEnumerator HideController(GameObject interactingObject, GameObject ignoredObject, float delayTime)
        {
            yield return(new WaitForSeconds(delayTime));

            VRTK_ObjectAppearance.SetRendererHidden(interactingObject, ignoredObject);
            OnControllerHidden(SetEventPayload(interactingObject, ignoredObject));
        }
コード例 #2
0
 protected static void SetupInstance()
 {
     if (instance == null && VRTK_SDKManager.instance != null)
     {
         instance = VRTK_SDKManager.instance.gameObject.AddComponent <VRTK_ObjectAppearance>();
     }
 }
コード例 #3
0
 // Token: 0x060016A4 RID: 5796 RVA: 0x0007A48D File Offset: 0x0007868D
 public static void UnhighlightObject(GameObject model)
 {
     VRTK_ObjectAppearance.SetupInstance();
     if (VRTK_ObjectAppearance.instance != null)
     {
         VRTK_ObjectAppearance.instance.InternalUnhighlightObject(model);
     }
 }
コード例 #4
0
 // Token: 0x060016A3 RID: 5795 RVA: 0x0007A46C File Offset: 0x0007866C
 public static void HighlightObject(GameObject model, Color?highlightColor, float fadeDuration = 0f)
 {
     VRTK_ObjectAppearance.SetupInstance();
     if (VRTK_ObjectAppearance.instance != null)
     {
         VRTK_ObjectAppearance.instance.InternalHighlightObject(model, highlightColor, fadeDuration);
     }
 }
コード例 #5
0
 // Token: 0x060016A1 RID: 5793 RVA: 0x0007A438 File Offset: 0x00078638
 public static void SetRendererHidden(GameObject model, GameObject ignoredModel = null)
 {
     VRTK_ObjectAppearance.SetupInstance();
     if (VRTK_ObjectAppearance.instance != null)
     {
         VRTK_ObjectAppearance.instance.InternalSetRendererHidden(model, ignoredModel);
     }
 }
コード例 #6
0
 // Token: 0x0600169F RID: 5791 RVA: 0x0007A3F7 File Offset: 0x000785F7
 public static void SetOpacity(GameObject model, float alpha, float transitionDuration = 0f)
 {
     VRTK_ObjectAppearance.SetupInstance();
     if (VRTK_ObjectAppearance.instance != null)
     {
         VRTK_ObjectAppearance.instance.InternalSetOpacity(model, alpha, transitionDuration);
     }
 }
コード例 #7
0
 protected virtual void ShowController(GameObject interactingObject, GameObject ignoredObject)
 {
     if (hideControllerRoutine != null)
     {
         StopCoroutine(hideControllerRoutine);
     }
     VRTK_ObjectAppearance.SetRendererVisible(interactingObject, ignoredObject);
 }
コード例 #8
0
 // Token: 0x060016A2 RID: 5794 RVA: 0x0007A458 File Offset: 0x00078658
 public static void ToggleRenderer(bool state, GameObject model, GameObject ignoredModel = null)
 {
     if (state)
     {
         VRTK_ObjectAppearance.SetRendererVisible(model, ignoredModel);
         return;
     }
     VRTK_ObjectAppearance.SetRendererHidden(model, ignoredModel);
 }
コード例 #9
0
 // Token: 0x06001570 RID: 5488 RVA: 0x0007607A File Offset: 0x0007427A
 protected virtual void ShowController(GameObject interactingObject, GameObject ignoredObject)
 {
     if (this.hideControllerRoutine != null)
     {
         base.StopCoroutine(this.hideControllerRoutine);
     }
     VRTK_ObjectAppearance.SetRendererVisible(interactingObject, ignoredObject);
     this.OnControllerVisible(this.SetEventPayload(interactingObject, ignoredObject));
 }
コード例 #10
0
        /// <summary>
        /// The HighlightElement method attempts to highlight a specific controller element.
        /// </summary>
        /// <param name="elementType">The element type on the controller.</param>
        /// <param name="color">The Color to highlight the controller element to.</param>
        /// <param name="fadeDuration">The duration in seconds to fade from the initial color to the target color.</param>
        public virtual void HighlightElement(SDK_BaseController.ControllerElements elementType, Color color, float fadeDuration = 0f)
        {
            Transform element = GetElementTransform(GetPathForControllerElement(elementType));

            if (element != null)
            {
                VRTK_ObjectAppearance.HighlightObject(element.gameObject, color, fadeDuration);
                SetColourParameter(elementType, color);
            }
        }
コード例 #11
0
        // Token: 0x0600154C RID: 5452 RVA: 0x00075924 File Offset: 0x00073B24
        protected virtual void ToggleHighlightAlias(bool state, string transformPath, Color?highlight, float duration = 0f)
        {
            Transform elementTransform = this.GetElementTransform(transformPath);

            if (elementTransform)
            {
                if (state)
                {
                    VRTK_ObjectAppearance.HighlightObject(elementTransform.gameObject, (highlight != null) ? highlight : new Color?(Color.white), duration);
                    return;
                }
                VRTK_ObjectAppearance.UnhighlightObject(elementTransform.gameObject);
            }
        }
コード例 #12
0
 protected virtual void ToggleControllerVisibility(bool visible)
 {
     if (grabbedObject != null)
     {
         VRTK_InteractControllerAppearance[] controllerAppearanceScript = grabbedObject.GetComponentsInParent <VRTK_InteractControllerAppearance>(true);
         if (controllerAppearanceScript.Length > 0)
         {
             controllerAppearanceScript[0].ToggleControllerOnGrab(visible, controllerReference.model, grabbedObject);
         }
     }
     else if (visible)
     {
         VRTK_ObjectAppearance.SetRendererVisible(controllerReference.model, grabbedObject);
     }
 }
コード例 #13
0
 // Token: 0x0600159C RID: 5532 RVA: 0x00076A64 File Offset: 0x00074C64
 protected virtual void ToggleControllerVisibility(bool visible)
 {
     if (this.grabbedObject != null)
     {
         VRTK_InteractControllerAppearance[] componentsInParent = this.grabbedObject.GetComponentsInParent <VRTK_InteractControllerAppearance>(true);
         if (componentsInParent.Length != 0)
         {
             componentsInParent[0].ToggleControllerOnGrab(visible, this.controllerReference.model, this.grabbedObject);
             return;
         }
     }
     else if (visible)
     {
         VRTK_ObjectAppearance.SetRendererVisible(this.controllerReference.model, this.grabbedObject);
     }
 }
コード例 #14
0
        protected virtual void ToggleHighlightAlias(bool state, string transformPath, Color?highlight, float duration = 0f)
        {
            Transform element = GetElementTransform(transformPath);

            if (element)
            {
                if (state)
                {
                    VRTK_ObjectAppearance.HighlightObject(element.gameObject, (highlight != null ? highlight : Color.white), duration);
                }
                else
                {
                    VRTK_ObjectAppearance.UnhighlightObject(element.gameObject);
                }
            }
        }
コード例 #15
0
 /// <summary>
 /// The UnhighlightElement method attempts to remove the highlight from the specific controller element.
 /// </summary>
 /// <param name="elementType">The element type on the controller.</param>
 public virtual void UnhighlightElement(SDK_BaseController.ControllerElements elementType)
 {
     if (!controllerHighlighted)
     {
         Transform element = GetElementTransform(GetPathForControllerElement(elementType));
         if (element != null)
         {
             VRTK_ObjectAppearance.UnhighlightObject(element.gameObject);
             SetColourParameter(elementType, Color.clear);
         }
     }
     else if (highlightController != Color.clear && GetColourParameter(elementType) != highlightController)
     {
         HighlightElement(elementType, highlightController, 0f);
     }
 }
コード例 #16
0
 // Token: 0x0600153C RID: 5436 RVA: 0x00075294 File Offset: 0x00073494
 public virtual void UnhighlightElement(SDK_BaseController.ControllerElements elementType)
 {
     if (!this.controllerHighlighted)
     {
         Transform elementTransform = this.GetElementTransform(this.GetPathForControllerElement(elementType));
         if (elementTransform != null)
         {
             VRTK_ObjectAppearance.UnhighlightObject(elementTransform.gameObject);
             this.SetColourParameter(elementType, Color.clear);
             return;
         }
     }
     else if (this.highlightController != Color.clear && this.GetColourParameter(elementType) != this.highlightController)
     {
         this.HighlightElement(elementType, this.highlightController, 0f);
     }
 }
コード例 #17
0
        protected virtual void ToggleControllerVisibility(bool visible)
        {
            GameObject modelContainer = VRTK_DeviceFinder.GetModelAliasController(gameObject);

            if (touchedObject != null)
            {
                VRTK_InteractControllerAppearance[] controllerAppearanceScript = touchedObject.GetComponentsInParent <VRTK_InteractControllerAppearance>(true);
                if (controllerAppearanceScript.Length > 0)
                {
                    controllerAppearanceScript[0].ToggleControllerOnTouch(visible, modelContainer, touchedObject);
                }
            }
            else if (visible)
            {
                VRTK_ObjectAppearance.SetRendererVisible(modelContainer, touchedObject);
            }
        }
コード例 #18
0
        protected override void ToggleControllerVisibility(bool visible)
        {
            if (grabbedObject != null)
            {
                ///[Obsolete]
#pragma warning disable 0618
                VRTK_InteractControllerAppearance[] controllerAppearanceScript = grabbedObject.GetComponentsInParent <VRTK_InteractControllerAppearance>(true);
#pragma warning restore 0618
                if (controllerAppearanceScript.Length > 0)
                {
                    controllerAppearanceScript[0].ToggleControllerOnGrab(visible, controllerReference.model, grabbedObject);
                }
            }
            else if (visible)
            {
                VRTK_ObjectAppearance.SetRendererVisible(controllerReference.model, grabbedObject);
            }
        }
コード例 #19
0
        protected virtual void ToggleState(GameObject objectToToggle, bool gameObjectShow, bool rendererShow, VRTK_InteractableObject.InteractionType interactionType)
        {
            if (objectToToggle != null)
            {
                if (!currentRenderStates.ContainsKey(objectToToggle) || currentRenderStates[objectToToggle] != rendererShow)
                {
                    VRTK_ObjectAppearance.ToggleRenderer(rendererShow, objectToToggle, ObjectToIgnore());
                    EmitRenderEvent(objectToToggle, rendererShow, interactionType);
                }

                if (!currentGameObjectStates.ContainsKey(objectToToggle) || currentGameObjectStates[objectToToggle] != gameObjectShow)
                {
                    objectToToggle.SetActive(gameObjectShow);
                    EmitGameObjectEvent(objectToToggle, gameObjectShow, interactionType);
                }

                VRTK_SharedMethods.AddDictionaryValue(currentRenderStates, objectToToggle, rendererShow, true);
                VRTK_SharedMethods.AddDictionaryValue(currentGameObjectStates, objectToToggle, gameObjectShow, true);
            }
        }
コード例 #20
0
        protected virtual void Awake()
        {
            if (instance == null)
            {
                instance = this;
            }
            else if (instance != this)
            {
                Destroy(gameObject);
            }

            var sdkManager = VRTK_SDKManager.instance;

            if (sdkManager != null && sdkManager.persistOnLoad)
            {
                DontDestroyOnLoad(gameObject);
            }

            haptics          = gameObject.AddComponent <VRTK_Haptics>();
            objectAppearance = gameObject.AddComponent <VRTK_ObjectAppearance>();
        }
コード例 #21
0
 public static void UnhighlightObject(GameObject model)
 {
     VRTK_ObjectAppearance.UnhighlightObject(model);
 }
コード例 #22
0
 public static void HighlightObject(GameObject model, Color?highlightColor, float fadeDuration = 0f)
 {
     VRTK_ObjectAppearance.HighlightObject(model, highlightColor, fadeDuration);
 }
コード例 #23
0
 public static void ToggleRenderer(bool state, GameObject model, GameObject ignoredModel = null)
 {
     VRTK_ObjectAppearance.ToggleRenderer(state, model, ignoredModel);
 }
コード例 #24
0
 public static void SetRendererHidden(GameObject model, GameObject ignoredModel = null)
 {
     VRTK_ObjectAppearance.SetRendererHidden(model, ignoredModel);
 }
コード例 #25
0
 public static void SetOpacity(GameObject model, float alpha, float transitionDuration = 0f)
 {
     VRTK_ObjectAppearance.SetOpacity(model, alpha, transitionDuration);
 }