//private bool m_detectionPaused = false;
    public bool AreAllBonesDetected(uint userId)
    {
        HumanSenser.SkeletonJointTransformation trans = new HumanSenser.SkeletonJointTransformation();

        if (!DetectBone(userId, HumanSenser.SkeletonJoint.TORSO_CENTER, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.LEFT_SHOULDER, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.LEFT_ELBOW, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.LEFT_HAND, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.RIGHT_SHOULDER, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.RIGHT_ELBOW, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.RIGHT_HAND, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.HEAD, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.WAIST, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.RIGHT_HIP, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.RIGHT_KNEE, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.RIGHT_FOOT, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.LEFT_HIP, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.LEFT_KNEE, ref trans)) return false;
        if (!DetectBone(userId, HumanSenser.SkeletonJoint.LEFT_FOOT, ref trans)) return false;

        return true;
    }
 bool TransformBone(uint userId, HumanSenser.SkeletonJoint joint, Transform dest)
 {
     HumanSenser.SkeletonJointTransformation trans = new HumanSenser.SkeletonJointTransformation();
     if (DetectBone(userId, joint, ref trans) == true)
     {
         Vector3 newPos = new Vector3(trans.pos.x, trans.pos.y, (trans.pos.z -= distanceToCamera));
         if (relativeTo != null)
         {
             dest.localPosition = (newPos *= m_jointPositionScale);
         }
         else
         {
             dest.position = (newPos *= m_jointPositionScale);
         }
         return true;
     }
     return false;
 }