注意我正在使用ThreeJS Library,也可以使用Tween
目前我有一个围绕它的中心旋转的杆。我希望它围绕世界的中心旋转(在这种情况下为0,0,0),但我现在完全坚持如何正确地做到这一点。想象一下它是围绕白球旋转的台球棒。如果有人可以帮助我,那将是值得赞赏的。
我想我必须根据它目前所处的角度改变它的位置,但不知道将如何完成。也许有一种更简单的方法来获得相同的结果,但我找不到任何结果。
我正在使用渲染循环中的以下内容为我的旋转设置动画:
//Animation
pole.rotateOnAxis(getAxis(angle), -Math.PI/2 - 0.1);
angle += 0.025;
pole.rotateOnAxis(getAxis(angle), Math.PI/2 + 0.1);
function getAxis(angle) {
return new THREE. Vector3(-Math.sin(angle), 0, Math.cos(angle));
}
由于它是相当多的代码,我把它放在JSFiddle https://jsfiddle.net/1swsh0v5/1/
上答案 0 :(得分:0)
var render = function () {
requestAnimationFrame( render );
angle += 0.025;
pole.position.x = 4 * Math.sin(angle);
pole.position.z = 4 * Math.cos(angle);
pole.rotation.y = angle - Math.PI/2;
renderer.render(scene, camera);
};