void CreateConnectionTo(Rigidbody desiredBody) { jointObject = InstantiateJointParent(); desiredBody.gameObject.GetComponent <ViveGrip_Grabbable>().GrabFrom(transform.position); joint = ViveGrip_JointFactory.JointToConnect(jointObject, desiredBody, transform.rotation); Message("ViveGripGrabStart"); }
void GrabWith(ViveGrip_GripPoint gripPoint) { Rigidbody desiredBody = gripPoint.TouchedObject().GetComponent <Rigidbody>(); desiredBody.gameObject.GetComponent <ViveGrip_Grabbable>().GrabFrom(transform.position); joint = ViveGrip_JointFactory.JointToConnect(jointObject, desiredBody, transform.rotation); }
void CreateConnectionTo(Rigidbody desiredBody) { jointObject = InstantiateJointParent(); Quaternion desiredRotation = OrientationChangeFor(desiredBody.gameObject); Vector3 offset = desiredBody.gameObject.GetComponent <ViveGrip_Grabbable>().anchor; joint = ViveGrip_JointFactory.JointToConnect(jointObject, desiredBody, offset, desiredRotation); }
/*------------------------injects*/ void ViveGripAirGrabStart(ViveGrip_GripPoint gripPoint) { Debug.Log("grabber ViveGripAirGrabStart"); if (gripPoint.airGrabbingTarget != null) { jointObject = InstantiateJointParent(); Rigidbody desiredBody = gripPoint.airGrabbingTarget.GetComponent <Rigidbody>(); gripPoint.airGrabbingTarget.GetComponent <ViveGrip_Grabbable>().GrabFrom(transform.position); joint = ViveGrip_JointFactory.JointToConnect(jointObject, desiredBody, transform.rotation); } }