private bool UpdateTrigger(OvrAvatarPhysicsHand hand, OVRInput.Axis1D input) { var hand_trigger = OVRInput.Get(input); if (hand_trigger > 0) { hand.ActivateColliders(); return(true); } else { hand.DeactivateColliders(); return(false); } }
public void AddPhysicsComponent(GameObject ovrAvatarComponent, OvrAvatarPhysicsHandTypes.HandType type) { var builder = new OvrAvatarPhysicsHandBuilder(); var hand = builder.Build(ovrAvatarComponent, type); if (type == OvrAvatarPhysicsHandTypes.HandType.Left) { leftHand = hand; } else if (type == OvrAvatarPhysicsHandTypes.HandType.Right) { rightHand = hand; } }
private OvrAvatarPhysicsHandComponent BuildThumb(OvrAvatarPhysicsHand hand, Transform thumbFingerBegin, Transform thumbFingerEnd) { var newGameObject = new GameObject(); newGameObject.transform.SetParent(hand.gameObject.transform); newGameObject.name = hand.gameObject.name + "_thumb"; newGameObject.transform.localPosition = new Vector3(0, 0, 0); newGameObject.transform.localRotation = Quaternion.identity; var thumbComponent = newGameObject.AddComponent <OvrAvatarPhysicsHandComponent>(); var thumbFingerCollider = newGameObject.AddComponent <CapsuleCollider>(); return(thumbComponent); }
private OvrAvatarPhysicsHandComponent BuildIndexFinger(OvrAvatarPhysicsHand hand, Transform indexFingerBegin1, Transform indexFingerEnd1) { var indexFingerGameObject = new GameObject(); indexFingerGameObject.transform.SetParent(hand.gameObject.transform); indexFingerGameObject.name = hand.gameObject.name + "_index"; indexFingerGameObject.transform.localPosition = new Vector3(0, 0, 0); indexFingerGameObject.transform.localRotation = Quaternion.identity; var indexComponent = indexFingerGameObject.AddComponent <OvrAvatarPhysicsHandComponent>(); var indexFingerCollider = indexFingerGameObject.AddComponent <CapsuleCollider>(); return(indexComponent); }
private OvrAvatarPhysicsHandComponent BuildFist(OvrAvatarPhysicsHand hand, Transform handBegin, Transform middleFinger) { var fistGameObject = new GameObject(); fistGameObject.transform.SetParent(hand.gameObject.transform); fistGameObject.name = hand.gameObject.name + "_fist"; fistGameObject.transform.localPosition = new Vector3(0, 0, 0); fistGameObject.transform.localRotation = Quaternion.identity; var fistComponent = fistGameObject.AddComponent <OvrAvatarPhysicsHandComponent>(); var fistCollider = fistGameObject.AddComponent <CapsuleCollider>(); return(fistComponent); }
private void BuildComponents( OvrAvatarPhysicsHand hand, OvrAvatarPhysicsHandTypes.HandType type, GameObject ovrAvatarComponent) { var transformations = CreateHandTransformations(type, ovrAvatarComponent); hand.gameObject.transform.localPosition = transformations.handBegin.transform.localPosition; hand.gameObject.transform.localRotation = transformations.handBegin.transform.localRotation; var handComponents = new HandComponents { indexComponent = BuildIndexFinger(hand, transformations.indexFingerBegin, transformations.indexFingerEnd), thumbComponent = BuildThumb(hand, transformations.thumbFingerBegin, transformations.thumbFingerEnd), fistComponent = BuildFist(hand, transformations.handBegin, transformations.grip) }; hand.Initialize(handComponents, transformations); }
public OvrAvatarPhysicsManager() { leftHand = null; rightHand = null; }