2016-11-24 1 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)