在THREE.JS中手动将旋转和翻译应用于Matrix4

时间:2012-06-20 11:00:45

标签: javascript matrix three.js

我试图理解three.js的坐标空间,我知道有object.matrix和object.matrixWorld。

在发表这篇博文Matrix Basics. How to step away from storing an orientation as ’3 angles’后,我决定尝试学习如何手动操作Matrix4的属性,从而避免使用Euler旋转。

我要做的就是将我的立方体从原点0,0,0转换,然后在世界空间中旋转它。我想到的结果是,立方体首先在y轴上平移,然后旋转会将它以大弧度返回到平面,但实际发生的是它只是回到原点而忽略了平移。

我一直在做很多关于向量和矩阵的阅读,我有信心我现在已经理解了它们背后的理论。我真正得到的是three.js如何处理matrixWorld和matrix。我试过了两个!

这是一个小提示:http://jsfiddle.net/SCXNQ/151/

只需查看render()函数即可查看我正在尝试做的事情!

编辑 - [已解决]更新的工作版FIDDLE 14/09/12

在下面的答案的帮助下,我想我会发布更新的小提示,展示我想要实现的目标 - http://jsfiddle.net/SCXNQ/363/

1 个答案:

答案 0 :(得分:2)

看看this,这是我认为你想要的。

编辑: 哎呀,矩阵命令错了(另外你需要掌握的东西) - >尝试this以及。