Version: 2018.4

HumanBone

struct in UnityEngine

マニュアルに切り替える

説明

Mecanim の人体構造でボーンに対する概念とモデルのボーンの間をマッピングするための構造体

Mecanim のヒューマンボーンとモデルのボーンの名前は、アニメーション中にボーンの回転を抑制する割り込み値の制限とともに保存されます。

using UnityEngine;
using System.Collections.Generic;

public class ExampleClass : MonoBehaviour { void Start() { Dictionary<string, string> 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"; string[] humanName = HumanTrait.BoneName; HumanBone[] humanBones = new HumanBone[boneName.Count]; int j = 0; int i = 0; while (i < humanName.Length) { if (boneName.ContainsKey(humanName[i])) { HumanBone humanBone = new HumanBone(); humanBone.humanName = humanName[i]; humanBone.boneName = boneName[humanName[i]]; humanBone.limit.useDefaultValues = true; humanBones[j++] = humanBone; } i++; } } }

変数

boneNameMecanim のヒューマノイド型ボーンがマッピングされたボーン名
humanNameモデルにおけるボーンのマッピング元となる Mecanim のヒューマノイド型ボーン名
limitボーンにおける割り込みの可動域を返す