protected virtual void Reset() { for (var tr = transform; raycaster == null && tr != null; tr = tr.parent) { raycaster = tr.GetComponentInChildren <Pointer3DRaycaster>(); } }
protected virtual void Reset() { for (var tr = transform; raycaster == null && tr != null; tr = tr.parent) { raycaster = tr.GetComponentInChildren <Pointer3DRaycaster>(); } if (lineRenderer == null) { lineRenderer = GetComponentInChildren <LineRenderer>(); } if (lineRenderer == null && raycaster != null) { lineRenderer = gameObject.AddComponent <LineRenderer>(); } if (lineRenderer != null) { #if UNITY_5_5_OR_NEWER lineRenderer.startWidth = 0.01f; lineRenderer.endWidth = 0f; #else lineRenderer.SetWidth(0.01f, 0f); #endif } }
protected void CleanUpRaycaster(Pointer3DRaycaster raycaster) { raycaster.CleanUpRaycast(); var hoverEventData = raycaster.HoverEventData; // hover event hoverEventData.pointerCurrentRaycast = default(RaycastResult); if (hoverEventData.pointerEnter != null) { HandlePointerExitAndEnter(hoverEventData, null); } // buttons event for (int i = 0, imax = raycaster.ButtonEventDataList.Count; i < imax; ++i) { var buttonEventData = raycaster.ButtonEventDataList[i]; if (buttonEventData == null) { continue; } buttonEventData.Reset(); buttonEventData.pointerCurrentRaycast = default(RaycastResult); ProcessPressUp(buttonEventData); if (buttonEventData.pointerEnter != null) { HandlePointerExitAndEnter(buttonEventData, null); } } }
protected virtual void Reset() { for (var tr = transform; raycaster == null && tr != null; tr = tr.parent) { raycaster = tr.GetComponentInChildren <Pointer3DRaycaster>(true); } reticleRenderer = GetComponentsInChildren <MeshRenderer>(true); }
public static void AddRaycaster(Pointer3DRaycaster raycaster) { if (raycaster == null) { return; } Initialize(); raycasters.AddUnique(raycaster); }
protected virtual void Reset() { if (raycaster == null) { raycaster = GetComponent <Pointer3DRaycaster>(); } if (raycaster == null) { raycaster = GetComponentInParent <Pointer3DRaycaster>(); } }
/// <summary> /// 获取左右手检测 /// </summary> /// <param name="role"></param> /// <returns></returns> public static Pointer3DRaycaster GetRaycsaterByHand(HandRole role) { Pointer3DRaycaster caster = null; for (int i = 0; i < _PosTracker.Length; i++) { if (_posTracker[i].viveRole.roleValue == (int)role) { caster = _posTracker[i].GetComponentInChildren <Pointer3DRaycaster>(true); if (caster != null) { return(caster); } } } return(caster); }
//private static List<Vector3> pointsOnCurve = new List<Vector3>(); #if UNITY_EDITOR protected virtual void Reset() { if (raycaster == null) { raycaster = GetComponent <Pointer3DRaycaster>(); } if (raycaster == null) { raycaster = GetComponentInParent <Pointer3DRaycaster>(); } if (lineRenderer == null) { lineRenderer = GetComponentInChildren <LineRenderer>(); } if (lineRenderer == null && raycaster != null) { lineRenderer = gameObject.AddComponent <LineRenderer>(); } if (lineRenderer != null) { lineRenderer.SetWidth(0.01f, 0.01f); } }
public VivePointerEventData(Pointer3DRaycaster ownerRaycaster, EventSystem eventSystem, HandRole hand, ControllerButton viveButton, InputButton mouseButton) : base(ownerRaycaster, eventSystem) { viveRole = ViveRoleProperty.New(hand); this.viveButton = viveButton; button = mouseButton; }
public static void RemoveRaycasters(Pointer3DRaycaster raycaster) { raycasters.Remove(raycaster); }
public GameObject CurrObject;//当前物体 private void Awake() { raycaster = this.GetComponent <Pointer3DRaycaster>(); }
public SDKPointer3DEventData(Pointer3DRaycaster ownerRaycaster, EventSystem eventSystem, MicroLightHand Incontroller) : base(ownerRaycaster, eventSystem) { HandHandler = Incontroller; mownerRaycaster = ownerRaycaster; }
public VivePointerEventData(Pointer3DRaycaster ownerRaycaster, EventSystem eventSystem, HandRole hand, ControllerButton viveButton, InputButton mouseButton) : base(ownerRaycaster, eventSystem) { this.hand = hand; this.viveButton = viveButton; button = mouseButton; }