【问题标题】:Three.js ColladaLoader "Cannot read property 'length' of undefined"Three.js ColladaLoader“无法读取未定义的属性'长度'”
【发布时间】:2018-04-05 18:15:29
【问题描述】:

我正在尝试重复此处找到的运动学示例:

https://threejs.org/examples/#webgl_loader_collada_kinematics

如果我使用示例中提供的 collada,一切都很好。但是,如果我使用自己的 collada,我会在第 138 行收到“长度”错误(我现在使用完全相同的代码):

https://github.com/mrdoob/three.js/blob/master/examples/webgl_loader_collada_kinematics.html

有人知道为什么吗?

【问题讨论】:

    标签: javascript three.js collada


    【解决方案1】:

    根据我在 Three.js github 上得到的答案,我的 dae 文件不包含任何运动学信息(所以标签如 library_kinematics_models 或 library_kinematics_scenes),而只是一个简单的骨架(骨骼动画)。我知道这一点,但我认为运动学是为了接触关节和一切。因此,由于它不包含任何动画数据,我只能使用 Collada Loader 静态显示它。

    编辑:如果加载器检测到皮肤和骨骼层次结构,它会将相应的网格返回为子项下的SkinnedMesh(对我来说是子项[1])。该对象有一个skeleton 属性,可以访问所有骨骼。

    之后,您必须使用Animation System 创建动画。

    更多信息可以参考我在 Three.js 上的post

    【讨论】:

      猜你喜欢
      • 2015-10-27
      • 1970-01-01
      • 2011-11-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-10
      • 2020-09-14
      • 2018-01-11
      • 2020-12-23
      相关资源
      最近更新 更多