Ejemplo n.º 1
0
 protected void UpdateUpperArm(HumanoidTarget.TargetTransform upperArmTarget)
 {
     upperArmTarget.confidence.rotation = upperArmSensor.rotationConfidence;
     if (upperArmTarget.confidence.rotation > 0)
     {
         upperArmTarget.transform.rotation = tracker.trackerTransform.rotation * upperArmSensor.rotation * upperArmBias;
     }
 }
 private void UpdateSpine(HumanoidTarget.TargetTransform spineTarget)
 {
     spineTarget.confidence.position = spineSensor.positionConfidence;
     if (spineTarget.confidence.position > 0)
     {
         spineTarget.transform.position = spineSensor.position;
     }
 }
Ejemplo n.º 3
0
 protected void UpdateShoulder(HumanoidTarget.TargetTransform shoulderTarget)
 {
     shoulderTarget.confidence.rotation = shoulderSensor.rotationConfidence;
     if (shoulderTarget.confidence.rotation > 0)
     {
         shoulderTarget.transform.rotation = tracker.trackerTransform.rotation * shoulderSensor.rotation;
     }
 }
Ejemplo n.º 4
0
 private void UpdateUpperLeg(HumanoidTarget.TargetTransform upperLegTarget)
 {
     upperLegTarget.confidence.rotation = upperLegSensor.rotationConfidence;
     if (upperLegTarget.confidence.rotation > 0)
     {
         upperLegTarget.transform.rotation = tracker.trackerTransform.rotation * upperLegSensor.rotation;
     }
 }
 private void UpdateNeck(HumanoidTarget.TargetTransform neckTarget)
 {
     neckTarget.confidence.position = neckSensor.positionConfidence;
     if (neckTarget.confidence.position > 0)
     {
         neckTarget.transform.position = neckSensor.position;
     }
 }
Ejemplo n.º 6
0
 private void UpdateLowerLeg(HumanoidTarget.TargetTransform lowerLegTarget, FootTarget.TargetedUpperLegBone upperLeg)
 {
     lowerLegTarget.confidence.rotation = lowerLegSensor.rotationConfidence;
     if (lowerLegTarget.confidence.rotation > 0)
     {
         lowerLegTarget.transform.rotation = tracker.trackerTransform.rotation * lowerLegSensor.rotation;
     }
 }
Ejemplo n.º 7
0
 private void UpdateFoot(HumanoidTarget.TargetTransform footTarget)
 {
     footTarget.confidence.position = footSensor.positionConfidence;
     if (footTarget.confidence.position > 0)
     {
         footTarget.transform.position = footSensor.position;
     }
 }
Ejemplo n.º 8
0
 protected void UpdateForearm(HumanoidTarget.TargetTransform forearmTarget)
 {
     if (forearmSensor.rotationConfidence > forearmTarget.confidence.rotation)
     {
         forearmTarget.transform.rotation  = forearmSensor.rotation * rotationCorrectionQ;
         forearmTarget.confidence.rotation = forearmSensor.rotationConfidence;
     }
 }
Ejemplo n.º 9
0
 private void UpdateUpperLeg(HumanoidTarget.TargetTransform upperLegTarget)
 {
     upperLegTarget.confidence.position = upperLegSensor.positionConfidence;
     if (upperLegTarget.confidence.position > 0)
     {
         upperLegTarget.transform.position = upperLegSensor.position;
     }
 }
Ejemplo n.º 10
0
 private void UpdateLowerLeg(HumanoidTarget.TargetTransform lowerLegTarget)
 {
     lowerLegTarget.confidence.position = lowerLegSensor.positionConfidence;
     if (lowerLegTarget.confidence.position > 0)
     {
         lowerLegTarget.transform.position = lowerLegSensor.position;
     }
 }
Ejemplo n.º 11
0
 protected void UpdateHand(HumanoidTarget.TargetTransform handTarget)
 {
     handTarget.confidence.rotation = handSensor.rotationConfidence;
     if (handTarget.confidence.rotation > 0)
     {
         handTarget.transform.rotation = tracker.trackerTransform.rotation * handSensor.rotation * handBias;
     }
 }
Ejemplo n.º 12
0
 private void UpdateHead(HumanoidTarget.TargetTransform headTarget)
 {
     headTarget.confidence.position = headSensor.positionConfidence;
     if (headTarget.confidence.position > 0)
     {
         headTarget.transform.position = headSensor.position;
     }
 }
Ejemplo n.º 13
0
 protected void UpdateForearm(HumanoidTarget.TargetTransform forearmTarget)
 {
     forearmTarget.confidence.rotation = forearmSensor.rotationConfidence;
     if (forearmTarget.confidence.rotation > 0)
     {
         forearmTarget.transform.rotation = tracker.trackerTransform.rotation * forearmSensor.rotation * forearmBias;
     }
 }
 private void UpdateHips(HumanoidTarget.TargetTransform hipsTarget)
 {
     hipsTarget.confidence.position = hipsSensor.positionConfidence;
     if (hipsTarget.confidence.position > 0)
     {
         hipsTarget.transform.position = hipsSensor.position;
     }
 }
Ejemplo n.º 15
0
 private void UpdateFoot(HumanoidTarget.TargetTransform footTarget, FootTarget.TargetedLowerLegBone lowerLeg)
 {
     footTarget.confidence.rotation = footSensor.rotationConfidence;
     footTarget.confidence.position = lowerLeg.target.confidence.rotation - 0.1F;
     if (footTarget.confidence.rotation > 0)
     {
         footTarget.transform.position = CalculatePosition(lowerLeg.target.transform, lowerLeg.bone.length);
         footTarget.transform.rotation = tracker.trackerTransform.rotation * footSensor.rotation;
     }
 }
Ejemplo n.º 16
0
        public void UpdateHead(HumanoidTarget.TargetTransform headTarget)
        {
            float confidence = headSensor.rotationConfidence;

            if (confidence > headTarget.confidence.rotation)
            {
                headTarget.confidence.rotation = confidence;
                headTarget.transform.rotation  = tracker.trackerTransform.rotation * headSensor.rotation;
            }
        }
        private void UpdateHead(HumanoidTarget.TargetTransform headTarget)
        {
            headTarget.confidence.position = headSensor.positionConfidence;
            if (headTarget.confidence.position > 0)
            {
                headTarget.transform.position = headSensor.position;
            }

            if (rotationTrackingAxis == RotationTrackingAxis.XY)
            {
                headTarget.transform.rotation = Quaternion.LookRotation(headTarget.transform.rotation * Vector3.forward);
            }
        }
Ejemplo n.º 18
0
 private void UpdateHand(HumanoidTarget.TargetTransform handTarget)
 {
     if (handSensor.positionConfidence > handTarget.confidence.position)
     {
         handTarget.transform.position  = handSensor.position;
         handTarget.confidence.position = handSensor.positionConfidence;
     }
     if (handSensor.rotationConfidence > handTarget.confidence.rotation)
     {
         handTarget.transform.rotation  = handSensor.rotation;
         handTarget.confidence.rotation = 0.8F; // handSensor.rotationConfidence;
     }
 }
Ejemplo n.º 19
0
        private void UpdateUpperArm(HumanoidTarget.TargetTransform upperArmTarget)
        {
            if (upperArmSensor.positionConfidence > upperArmTarget.confidence.position)
            {
                upperArmTarget.transform.position  = upperArmSensor.position;
                upperArmTarget.confidence.position = upperArmSensor.positionConfidence;
            }

            if (upperArmSensor.rotationConfidence > upperArmTarget.confidence.rotation)
            {
                upperArmTarget.transform.rotation  = upperArmSensor.rotation;
                upperArmTarget.confidence.rotation = 0.8F; // upperArmSensor.rotationConfidence;
            }
        }
Ejemplo n.º 20
0
        private void UpdateSpine(HumanoidTarget.TargetTransform spineTarget)
        {
            spineTarget.confidence.position = spineSensor.positionConfidence;
            if (spineTarget.confidence.position > 0)
            {
                spineTarget.transform.position = spineSensor.position;
            }

            spineTarget.confidence.rotation = (spineSensor.positionConfidence + chestSensor.positionConfidence) / 2 * 0.8F;
            if (spineTarget.confidence.rotation > 0)
            {
                Vector3    toChest  = chestSensor.position - spineSensor.position;
                Quaternion rotation =
                    Quaternion.LookRotation(toChest, -humanoid.transform.forward) *
                    Quaternion.AngleAxis(90, humanoid.transform.right);
                spineTarget.transform.rotation = rotation;
            }
        }
Ejemplo n.º 21
0
        private void UpdateHips(HumanoidTarget.TargetTransform hipsTarget)
        {
            hipsTarget.confidence.position = hipsSensor.positionConfidence;
            if (hipsTarget.confidence.position > 0)
            {
                hipsTarget.transform.position = hipsSensor.position;
            }

            hipsTarget.confidence.rotation = (hipsSensor.positionConfidence + spineSensor.positionConfidence) / 2 * 0.8F;
            if (hipsTarget.confidence.rotation > 0)
            {
                Vector3    toSpine  = spineSensor.position - hipsSensor.position;
                Quaternion rotation =
                    Quaternion.LookRotation(toSpine, -humanoid.transform.forward) *
                    Quaternion.AngleAxis(90, humanoid.transform.right);
                hipsTarget.transform.rotation = rotation;
            }
        }
Ejemplo n.º 22
0
        private void UpdateChest(HumanoidTarget.TargetTransform chestTarget)
        {
            chestTarget.confidence.position = chestSensor.positionConfidence;
            if (chestTarget.confidence.position > 0)
            {
                chestTarget.transform.position = chestSensor.position;
            }

            chestTarget.confidence.rotation = (chestSensor.positionConfidence + neckSensor.positionConfidence) / 2 * 0.8F;
            if (chestTarget.confidence.rotation > 0)
            {
                Vector3    toNeck   = neckSensor.position - chestSensor.position;
                Quaternion rotation =
                    Quaternion.LookRotation(toNeck, -humanoid.transform.forward) *
                    Quaternion.AngleAxis(90, humanoid.transform.right);
                chestTarget.transform.rotation = rotation;
            }
        }
Ejemplo n.º 23
0
        private void UpdateForearm(HumanoidTarget.TargetTransform forearmTarget)
        {
            if (forearmSensor.positionConfidence > forearmTarget.confidence.position)
            {
                forearmTarget.transform.position  = forearmSensor.position;
                forearmTarget.confidence.position = forearmSensor.positionConfidence;
            }

            Vector3 upperArmForward = forearmSensor.position - upperArmSensor.position;
            Vector3 forearmForward  = handSensor.position - forearmSensor.position;
            Vector3 forearmUp       = Vector3.Cross(upperArmForward, forearmForward);

            if (!handTarget.isLeft)
            {
                forearmUp = -forearmUp;
            }

            forearmTarget.transform.rotation = Quaternion.LookRotation(forearmForward, forearmUp);
            //forearmTarget.transform.rotation =  forearmSensor.rotation; is not good enough
            forearmTarget.confidence.rotation = forearmSensor.rotationConfidence;
        }
Ejemplo n.º 24
0
        private void UpdateNeck(HumanoidTarget.TargetTransform neckTarget)
        {
            neckTarget.confidence.position = neckSensor.positionConfidence;
            if (neckTarget.confidence.position > 0)
            {
                neckTarget.transform.position = neckSensor.position;
            }

            neckTarget.confidence.rotation = (neckSensor.positionConfidence + headSensor.positionConfidence) / 2 * 0.8F;
            if (neckTarget.confidence.rotation > 0)
            {
                Vector3    toHead   = headSensor.position - neckSensor.position;
                Quaternion rotation =
                    Quaternion.LookRotation(toHead, -headTarget.humanoid.transform.forward) *
                    Quaternion.AngleAxis(90, headTarget.humanoid.transform.right);
                neckTarget.transform.rotation = rotation;

                if (rotationTrackingAxis == RotationTrackingAxis.XY)
                {
                    neckTarget.transform.rotation = Quaternion.LookRotation(neckTarget.transform.rotation * Vector3.forward);
                }
            }
        }