public static void DeregisterInteractable(NVRInteractable interactable) { foreach (var hand in Instance.Hands) { hand.DeregisterInteractable(interactable); } }
public static void Deregister(NVRInteractable interactable) { NVRPlayer.DeregisterInteractable(interactable); ColliderMapping = ColliderMapping.Where(mapping => mapping.Value != interactable).ToDictionary(mapping => mapping.Key, mapping => mapping.Value); NVRInteractableMapping.Remove(interactable); }
public static void Register(NVRInteractable interactable, Collider[] colliders) { NVRInteractableMapping.Add(interactable, colliders); for (var index = 0; index < colliders.Length; index++) { ColliderMapping.Add(colliders[index], interactable); } }
public virtual void EndInteraction(NVRInteractable item) { if (item != null && CurrentlyHoveringOver.ContainsKey(item) == true) CurrentlyHoveringOver.Remove(item); if (ObjectCurrentlyInteracting != null) { ObjectCurrentlyInteracting.EndInteraction(); ObjectCurrentlyInteracting = null; } if (CurrentInteractionStyle == InterationStyle.GripToggleToInteract) { if (CurrentHandState != HandState.Idle) { CurrentHandState = HandState.Idle; } } }
public void DeregisterInteractable(NVRInteractable interactable) { if (ObjectCurrentlyInteracting == interactable) ObjectCurrentlyInteracting = null; CurrentlyHoveringOver.Remove(interactable); }
public virtual void BeginInteraction(NVRInteractable interactable) { if (interactable.CanAttach == true) { if (interactable.AttachedHand != null) { interactable.AttachedHand.EndInteraction(null); } ObjectCurrentlyInteracting = interactable; ObjectCurrentlyInteracting.BeginInteraction(this); } }