Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在three.js ColladLoader对象中定位骨骼(骨骼动画)_Three.js_Collada - Fatal编程技术网

如何在three.js ColladLoader对象中定位骨骼(骨骼动画)

如何在three.js ColladLoader对象中定位骨骼(骨骼动画),three.js,collada,Three.js,Collada,我已经使用colladaloader加载了biped角色网格 我可以通过更改dae对象上的位置和旋转来移动网格 dae.rotation.y+=0.01; dae.updateMatrix(); 工作正常 但我似乎无法移动单个骨骼。。。。你知道怎么做吗 dae.children[0].rotation.z += 0.1; dae.children[0].quaternion._x += 0.1; dae.children[0].position.x += 0.1; dae.children[0

我已经使用colladaloader加载了biped角色网格

我可以通过更改dae对象上的位置和旋转来移动网格

dae.rotation.y+=0.01;
dae.updateMatrix();
工作正常

但我似乎无法移动单个骨骼。。。。你知道怎么做吗

dae.children[0].rotation.z += 0.1;
dae.children[0].quaternion._x += 0.1;
dae.children[0].position.x += 0.1;
dae.children[0].matrixAutoUpdate = true;
dae.children[0].matrixWorldNeedsUpdate = true;
dae.children[0].updateMatrix();
不起作用

整个项目:

运行链接:(可能会随着人员更新/重新运行项目而更改)


(每次有人执行“运行>运行”应用程序时都会更改,因此此处没有列出运行url的点。)

在函数“动画”中,您需要在调用render()之前添加此内容: 请求动画帧(动画); 此时,甚至在对骨骼进行更改之前,您正在重新运行“动画”功能。所以很明显,没有任何东西在移动。 这都是关于代码的顺序


如果这不起作用,您能告诉我您的控制台是否有错误吗?

这并不像我希望的那么简单。加载程序创建了对象的层次结构,但是移动它们不会影响几何体的顶点

必须实现的过程称为“蒙皮方程”,以使用加权骨骼方向以及其他矩阵变换顶点几何体

另请参阅:

我想把这个答案作为对原始问题的一个评论,因为这是一个消除Codenvy应用程序运行时每次点击都更改URL的建议。粘贴到响应中的URL是临时工作区URL。因此,一旦项目闲置10分钟,工作区就会被破坏。如果发布此项目的用户可以将其项目复制到其帐户工作区中,则其中有一个名为“共享->工厂”的选项,该选项将生成一个URL,该URL是a)永久的,b)将为每个单击它的人创建一个完全克隆的工作区。如果您向我们发送文件或共享您的帐户,我们可以创建可添加到原始问题中的工厂,以便所有观众都能看到一个功能完整的克隆。

阅读了一些内容,但不一定总是儿童[0]。如果您在console.log中“打印”您的模型(dae),也许您可以找出要解决的问题。你会从那里得到很多信息