I ve seen different options to rotate objects but I don
これを適用する方法はわかります。私は非常にjavascriptに新しいです。私はキューブと球体を作成し、球体をそれ自身の軸の周りで回転させるように管理しましたが、キューブの周りを回転する必要があります。助けてください。 これは私のコードです:私はあなたの球のコンテナとしてObject3D
を使用することをお勧めこの場合Three.jsでキューブの周りの球をどのように回転させることができますか
<html>
<head>
<title>My first Three.js app</title>
<style>
body { margin: 0; }
canvas { width: 100%; height: 100% }
</style>
</head>
<body>
<script src="js/three.js"></script>
<script>
var scene = new THREE.Scene();
var camera = new THREE.PerspectiveCamera(100, window.innerWidth/window.innerHeight, 0.1, 1000);
var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);
camera.position.z = 25;
var loader = new THREE.TextureLoader();
var texture = loader.load('crate.jpg');
var geometry = new THREE.BoxGeometry(7, 7, 7);
var material = new THREE.MeshBasicMaterial({map: texture});
var cube = new THREE.Mesh(geometry, material);
cube.rotation.x += 0.6;
cube.rotation.y += 0.6;
scene.add(cube);
var loader = new THREE.TextureLoader();
var texture = loader.load('earth.jpg');
var geometry = new THREE.SphereGeometry(1, 50, 50);
var material = new THREE.MeshBasicMaterial({map: texture});
var sphere = new THREE.Mesh(geometry, material);
scene.add(sphere);
var render = function() {
requestAnimationFrame(render);
sphere.position.set(6, 0, 15);
sphere.rotation.y += 0.01;
renderer.render(scene, camera);
};
render();
</script>
</body>
</html>
私は、コードをコピーして、良いと簡単なことのようですが、それは仕事をdoesnの 't。私が得ているエラーは "sphereContainerは定義されていません" が定義されています。 – AstroMiss
sphereContainerを定義するときに 'new'を忘れてしまったことが分かります。だから私はそれを '新しいTHREE.Object3D()'に編集しました。私はそれが今働くことを望む。あなたのソリューションは、フレームごとにもっと多くの計算のように思えます。 – Brakebein