【发布时间】:2014-09-05 18:26:56
【问题描述】:
您好,我的 three.js 场景中的动画和移动存在问题。 当我移动我的相机(甚至 0,0000001%)(通过 THREE.TrackballControls 或 THREE.OrbitControls)或使用 Tween.js 为对象设置动画时,我的动画非常不稳定,对象在动画期间围绕运动轴跳跃,看起来位置四舍五入是错误的。
问题更大,当我远离场景中心时(发送者在顶点 (0,0,0) 上),例如我在顶点 (0,8000000,0) 上,问题就更大了。
当我移动相机或移动物体时。
我正在使用标准示例代码和 satndard 库:
<script src="http://threejs.org/examples/../build/three.min.js"></script>
<script src="js/Detector.js"></script>
<script src="js/TrackballControls.js"></script>
<script src="js/stats.js"></script>
<script src="js/tween.min.js"></script>
我将在这里发布一部分代码,但我不知道代码的哪一部分..?
这里的问题视频:
编辑:
我尝试将物体和相机的位置移动到靠近中心的位置(在 XYZ:0,0,1000 上),抖动要小得多,但错误仍然很明显: Video 2 here
【问题讨论】:
-
听起来像精度损失(三只在其矩阵计算中使用 32 位浮点数)。你能在视频开始时给出物体和相机在世界中的确切位置吗?
-
世界相机的Hi顶点为0,0,-10000100,物体为0,0,-10000000。要点是让星星在 0,0,0 和行星周围旋转。但是,如果我在 0,0,1000 的中心附近移动物体,它会更加平滑,但移动中仍然有可见的“切碎”,我认为移动必须 100% 清晰,或者我错过了什么?谢谢你的回答。
-
我尝试将物体和相机的位置靠近中心(在XYZ:0,0,1000),它的抖动要小得多,但错误仍然很明显viking.viaconn.net/trash/ScreenCapture_2014-9-8%2010.19.51.wmv
标签: javascript three.js tween.js