public override IEnumerator InitializeHand(device_type_t deviceType) { yield return(new WaitForFixedUpdate()); Hand targetHand = TargetManager.GetHandController(deviceType); Transform target = targetHand.WristTransform; GameObject parent = deviceType == device_type_t.GLOVE_LEFT ? Left.gameObject : Right.gameObject; // Initialize visual body SphereCollider collider = target.gameObject.AddComponent <SphereCollider>(); collider.center = new Vector3(-0.01f, -0.11f, -0.04f); collider.radius = 0.04f; collider.isTrigger = true; target.gameObject.AddComponent <TriggerBinder>(); // Initialize the controller var hand = HandFactory.GetHand(parent, HandType.Physics, TargetManager.HandData, this, deviceType); var controller = hand as PhysicsHand; controller.PhysicsHandSettings = _physicsHandSettings; controller.PhysicsWristSettings = _physicsWristSettings; controller.PhysicsFingerSettings = _physicsFingerSettings; controller.Target = targetHand; HandControllers.Add(controller); controller.Grabber = CreateObjectGrabber(parent, deviceType, target); }