【问题标题】:How do you access the skeleton of a gltf in Aframe如何在 Aframe 中访问 gltf 的骨架
【发布时间】:2022-01-15 15:30:11
【问题描述】:

我有一个带有骨架的 gltf 文件,我想手动移动骨架的骨骼。实时做到这一点有多难

【问题讨论】:

    标签: aframe


    【解决方案1】:

    骨架中的每根骨骼都是一个THREE.Bone 实例,并且可以通过A-Frame 组件中的JavaScript 访问:

    const mesh = el.getObject3D('mesh');
    const bone = mesh.getObjectByName('LeftUpperArm');
    bone.rotation.y = Math.PI / 4;
    

    骨骼的数量及其名称因模型而异,因此您可能会发现.traverse(...) 网格并打印其骨骼名称以供参考会有所帮助。

    因此,简单地移动骨骼中的骨骼并不难,但您可能会发现以精确和自然的方式移动骨骼并不方便 - 特别是对于人类骨骼。旋转将涉及相当多的数学,而数学在很大程度上取决于您正在使用的特定骨架。一般来说,在 Blender 中制作这种类型的动画可能更容易,或者使用 IK 库(如THREE.IK)。

    【讨论】:

    • 我有一些代码。你能帮我复习一下吗?
    • 我无法提供一对一的评论,也无法帮助您针对特定装备定制代码。但是,如果某些事情没有按预期工作,请随时打开一个新的 Stack Overflow 问题。
    猜你喜欢
    • 2023-04-08
    • 2018-11-16
    • 1970-01-01
    • 2018-08-27
    • 2021-03-03
    • 2019-09-16
    • 2020-04-03
    • 2021-08-10
    • 1970-01-01
    相关资源
    最近更新 更多