首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Unity HumanTrait.GetMuscleDefaultMax()按名称获取

问Unity HumanTrait.GetMuscleDefaultMax()按名称获取
EN

Stack Overflow用户
提问于 2015-09-23 04:22:48
回答 1查看 290关注 0票数 0

我正在尝试获得骨骼的肌肉最大值,但我似乎无法访问它。我知道我想要哪个骨骼,但除了循环遍历所有骨骼的数组之外,我不知道如何访问它。

有没有办法只获取肌肉信息?这不起作用:

代码语言:javascript
复制
selected = Selection.activeGameObject.transform.root.gameObject;

Animator anim = selected.GetComponent<Animator>();

float indexMax = HumanTrait.GetMuscleDefaultMax(HumanBodyBones.LeftIndexProximal);

这给了我一个对象的变换,但这不是我要找的:

代码语言:javascript
复制
Transform index1 = anim.GetBoneTransform(HumanBodyBones.LeftIndexProximal);

如何才能在不遍历所有骨骼的情况下获得HumanTrait.GetMuscleDefaultMax?

EN

回答 1

Stack Overflow用户

发布于 2015-09-24 01:15:31

这个方法似乎做到了这一点( BoneInfo类需要用公共属性创建):

代码语言:javascript
复制
BoneInfo GetBoneInfo(HumanBodyBones id) {

    int boneid = (int)id.GetHashCode();
    BoneInfo info = new BoneInfo();

    info.muscleMax = HumanTrait.GetMuscleDefaultMax(boneid);
    info.muscleMin = HumanTrait.GetMuscleDefaultMin(boneid);
    info.transform = anim.GetBoneTransform(id);

    return info;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32726158

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档