The mapping between a bone in the model and the conceptual bone in the Mecanim human anatomy.
在模型中的骨骼和Mecanim人类结构概念骨骼之间的映射。
The names of the Mecanim human bone and the bone in the model are stored along with the limiting muscle values that constrain the bone's rotation during animation.
Mecanim人类骨骼和模型的骨骼的名字随着限制肌肉约束骨骼的旋转动画过程中的值一起被储存。
JavaScript:
function Start() { var boneName = new System.Collections.Generic.Dictionary.<String, String>(); boneName["Chest"] = "Bip001 Spine2"; boneName["Head"] = "Bip001 Head"; boneName["Hips"] = "Bip001 Pelvis"; boneName["LeftFoot"] = "Bip001 L Foot"; boneName["LeftHand"] = "Bip001 L Hand"; boneName["LeftLowerArm"] = "Bip001 L Forearm"; boneName["LeftLowerLeg"] = "Bip001 L Calf"; boneName["LeftShoulder"] = "Bip001 L Clavicle"; boneName["LeftUpperArm"] = "Bip001 L UpperArm"; boneName["LeftUpperLeg"] = "Bip001 L Thigh"; boneName["RightFoot"] = "Bip001 R Foot"; boneName["RightHand"] = "Bip001 R Hand"; boneName["RightLowerArm"] = "Bip001 R Forearm"; boneName["RightLowerLeg"] = "Bip001 R Calf"; boneName["RightShoulder"] = "Bip001 R Clavicle"; boneName["RightUpperArm"] = "Bip001 R UpperArm"; boneName["RightUpperLeg"] = "Bip001 R Thigh"; boneName["Spine"] = "Bip001 Spine1"; var humanName: String[] = HumanTrait.BoneName; var humanBones: HumanBone[] = new HumanBone[boneName.Count]; var j = 0; for (var i = 0; i < humanName.Length; i++) { if (boneName.ContainsKey(humanName[i])) { var humanBone = new HumanBone(); humanBone.humanName = humanName[i]; humanBone.boneName = boneName[humanName[i]]; humanBone.limit.useDefaultValues = true; humanBones[j++] = humanBone; } } }
C#:
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { void Start() { stringstring boneName = System.Collections.Generic.Dictionary<string, string>(); boneName["Chest"] = "Bip001 Spine2"; boneName["Head"] = "Bip001 Head"; boneName["Hips"] = "Bip001 Pelvis"; boneName["LeftFoot"] = "Bip001 L Foot"; boneName["LeftHand"] = "Bip001 L Hand"; boneName["LeftLowerArm"] = "Bip001 L Forearm"; boneName["LeftLowerLeg"] = "Bip001 L Calf"; boneName["LeftShoulder"] = "Bip001 L Clavicle"; boneName["LeftUpperArm"] = "Bip001 L UpperArm"; boneName["LeftUpperLeg"] = "Bip001 L Thigh"; boneName["RightFoot"] = "Bip001 R Foot"; boneName["RightHand"] = "Bip001 R Hand"; boneName["RightLowerArm"] = "Bip001 R Forearm"; boneName["RightLowerLeg"] = "Bip001 R Calf"; boneName["RightShoulder"] = "Bip001 R Clavicle"; boneName["RightUpperArm"] = "Bip001 R UpperArm"; boneName["RightUpperLeg"] = "Bip001 R Thigh"; boneName["Spine"] = "Bip001 Spine1"; string[] humanName = HumanTrait.BoneName; HumanBone[] humanBones = HumanBone[boneName.Count]; int j = 0; int i = 0; while (i < humanName.Length) { if (boneName.ContainsKey(humanName[i])) { HumanBone humanBone = HumanBone(); humanBone.humanName = humanName[i]; humanBone.boneName = boneName[humanName[i]]; humanBone.limit.useDefaultValues = true; humanBones[j++] = humanBone; } i++; } } }