void DoGetGrabbedObject()
        {
            if (handTarget == null)
            {
                handTarget = FsmHandUtils.GetHandTarget(this.Fsm, handObject);
            }

            if (handTarget != null)
            {
                grabbedObject.Value = handTarget.grabbedObject;
            }
        }
        void DoGetHandPose()
        {
            if (handTarget == null)
            {
                handTarget = FsmHandUtils.GetHandTarget(this.Fsm, handObject);
            }

            if (handTarget != null)
            {
                thumbCurl.Value  = handTarget.fingers.thumb.curl;
                indexCurl.Value  = handTarget.fingers.index.curl;
                middleCurl.Value = handTarget.fingers.middle.curl;
                ringCurl.Value   = handTarget.fingers.ring.curl;
                littleCurl.Value = handTarget.fingers.little.curl;
            }
        }
        public override void OnUpdate()
        {
            if (handTarget == null)
            {
                handTarget = FsmHandUtils.GetHandTarget(Fsm, handObject);
            }

            if (handTarget != null)
            {
                handTarget.SetFingerCurl(Finger.Thumb, thumbCurl.Value);
                handTarget.SetFingerCurl(Finger.Index, indexCurl.Value);
                handTarget.SetFingerCurl(Finger.Middle, middleCurl.Value);
                handTarget.SetFingerCurl(Finger.Ring, ringCurl.Value);
                handTarget.SetFingerCurl(Finger.Little, littleCurl.Value);
            }
        }