2016-11-24 8 views
0

私は胃が雪の球である雪だるまを作りたいと思っています。シーン内にシーンを作成する方法があるのだろうかと思っていました。基本的に私は彼の腹にスクロールするとき、私は別のシーンをロードしたい。これは可能ですか?これまでの私の基本的なコードは次のとおりです。シーンが3つのjsのシーン内

<!DOCTYPE html> 
<html> 


<head> 
    <title></title> 
     </head> 
     <body> 
     <script src="three.js"></script> 
     <script src="TrackballControls.js"></script> 
     <script> 

     var camera, controls, scene, renderer; 

     init(); 
     animate(); 

     function init() { 
     camera = new THREE.PerspectiveCamera(75,window.innerWidth/window.innerHeight, 0.1, 1000); 
     camera.position.z = 10; 

     controls = new THREE.TrackballControls(camera); 
     controls.addEventListener("change", render); 

     scene = new THREE.Scene(); 

     var geometry = new THREE.SphereGeometry(4,32,32); 
     var material = new THREE.MeshBasicMaterial({ color: 0xcacec6 }); 
     var middleSphere = new THREE.Mesh(geometry, material); 
     scene.add(middleSphere); 
     middleSphere.position.y = -0.5; 

     renderer = new THREE.WebGLRenderer(); 
     renderer.setSize(window.innerWidth, window.innerHeight); 
     document.body.appendChild(renderer.domElement); 
     } 

     function ani`enter code here`mate() { 
     requestAnimationFrame(animate); 
     controls.update(); 
     } 

     function render() { 
     renderer.render(scene, camera); 
     } 


    </script> 


    </body> 
</html> 
+0

お役に立てば幸いです。私はちょうど正しい方向に振る舞いが好きです。 – suprkain

答えて

0

私はおそらく、独自のカメラで、追加的なシーンを作る提案、そしてあなたはそれの内側にしたいオブジェクトをロードします。

次に、render()またはanimate()で何らかのチェックを行います。

擬似コード

make scene1 with objects and camera1 
make scene2 with objects and camera2 
make empty scene called currentScene 
set currentScene to scene1 
set currentCamera to camera1 
create sceneIndex or a bool to check which scene and camera is currently used 

//in render() or animate() 
if(sceneIndex == 1 && its position inside snowman) 
currentScene = scene2, currentCamera = camera2 and update sceneIndex 

else if(sceneIndex == 2 && its cameraposition outside snowman) 
currentScene = scene1, currentCamera = camera1 and update sceneIndex 

//render 
renderer.render(currentScene,currentCamera) 

はそれが私はそれを解決するために誰かを探していないよ

関連する問題