private BodypartClassification GetBodypartClassification(Transform kinectTransform, BodypartClassification parentClassification) { BodypartClassification newBodypartClassification = parentClassification; if (kinectTransform == skeletonController.torso) { newBodypartClassification = BodypartClassification.Torso; } else if (kinectTransform == skeletonController.head) { newBodypartClassification = BodypartClassification.Head; } else if (kinectTransform == skeletonController.rightShoulder) { newBodypartClassification = BodypartClassification.RightArm; } else if (kinectTransform == skeletonController.leftShoulder) { newBodypartClassification = BodypartClassification.LeftArm; } else if (kinectTransform == skeletonController.rightHip) { newBodypartClassification = BodypartClassification.RightLeg; } else if (kinectTransform == skeletonController.leftHip) { newBodypartClassification = BodypartClassification.LeftLeg; } return(newBodypartClassification); }
private float GetBlendWeight(BodypartClassification bodypartClassification) { switch (bodypartClassification) { case BodypartClassification.Root: return(rootBlendWeight); case BodypartClassification.Torso: return(torsoBlendWeight); case BodypartClassification.Head: return(headBlendWeight); case BodypartClassification.RightArm: return(rightArmBlendWeight); case BodypartClassification.LeftArm: return(leftArmBlendWeight); case BodypartClassification.RightLeg: return(rightLegBlendWeight); case BodypartClassification.LeftLeg: return(leftLegBlendWeight); default: return(0); } }
public BoneTriplet(Transform kinectTransform, Transform mecanimTransform, Transform blendedTransform, BodypartClassification bodypartClassification) { this.kinectTransform = kinectTransform; this.mecanimTransform = mecanimTransform; this.blendedTransform = blendedTransform; children = new List <BoneTriplet>(); this.bodypartClassification = bodypartClassification; }
public BoneTriplet(Transform kinectTransform, Transform mecanimTransform, Transform blendedTransform, BodypartClassification bodypartClassification) { this.kinectTransform = kinectTransform; this.mecanimTransform = mecanimTransform; this.blendedTransform = blendedTransform; children = new List<BoneTriplet>(); this.bodypartClassification = bodypartClassification; }
private void AddChildren(ref BoneTriplet triplet, BodypartClassification parentBodypartClassification) { for (int i = 0; i < triplet.kinectTransform.childCount; i++) { BoneTriplet childTriplet = new BoneTriplet(triplet.kinectTransform.GetChild(i), triplet.mecanimTransform.GetChild(i), triplet.blendedTransform.GetChild(i), GetBodypartClassification(triplet.kinectTransform.GetChild(i), triplet.bodypartClassification)); if (parentBodypartClassification != childTriplet.bodypartClassification) { RegisterRootBone(childTriplet); } if (childTriplet.kinectTransform == skeletonController.neck) { neckRoot = childTriplet; } triplet.children.Add(childTriplet); AddChildren(ref childTriplet, childTriplet.bodypartClassification); } }
private BodypartClassification GetBodypartClassification(Transform kinectTransform, BodypartClassification parentClassification) { BodypartClassification newBodypartClassification = parentClassification; if (kinectTransform == skeletonController.torso) { newBodypartClassification = BodypartClassification.Torso; } else if (kinectTransform == skeletonController.head) { newBodypartClassification = BodypartClassification.Head; } else if (kinectTransform == skeletonController.rightShoulder) { newBodypartClassification = BodypartClassification.RightArm; } else if (kinectTransform == skeletonController.leftShoulder) { newBodypartClassification = BodypartClassification.LeftArm; } else if (kinectTransform == skeletonController.rightHip) { newBodypartClassification = BodypartClassification.RightLeg; } else if (kinectTransform == skeletonController.leftHip) { newBodypartClassification = BodypartClassification.LeftLeg; } return newBodypartClassification; }
private float GetBlendWeight(BodypartClassification bodypartClassification) { switch (bodypartClassification) { case BodypartClassification.Root: return rootBlendWeight; case BodypartClassification.Torso: return torsoBlendWeight; case BodypartClassification.Head: return headBlendWeight; case BodypartClassification.RightArm: return rightArmBlendWeight; case BodypartClassification.LeftArm: return leftArmBlendWeight; case BodypartClassification.RightLeg: return rightLegBlendWeight; case BodypartClassification.LeftLeg: return leftLegBlendWeight; default: return 0; } }