2014-12-13 2 views
0

첫 번째 캔버스, id = "main", 창 크기로 설정. 이 캔버스 용 카메라는 물체에 부착되어 운전과 같은 화살표 키로 움직일 수 있습니다. 시작 위치 (x, y, z)는 0,0,25입니다. 이것은 잘 작동합니다. 두 번째 캔버스, id = "radar", 150 x 150으로 설정, 절대 위치는 하단 : 0 및 왼쪽 : 0입니다. 두 번째 카메라는 오버 헤드이며 시작 위치 (x, y, z)는 0,110,0 및 rotation.x -1.75가됩니다. 이것은 또한 작동합니다. 어떻게 둘 다 동시에 일하도록 할 수 있습니까? 당신이 PHP와 자바 스크립트 코드를 출력 할 것 같습니다 왜 여기두 개의 카메라와 두 개의 캔버스를 사용할 수 있습니까

코드

echo'function createRenderer(){'; 
     echo'renderer = new THREE.WebGLRenderer({antialias: true});'; 
     echo'renderer.setClearColor(0xffffff);'; 
     echo'renderer.setSize(window.innerWidth, window.innerHeight);'; 
     echo'main = renderer.domElement;'; 
     echo'main.id = "main";'; 
     echo'AddElem(GetElem("body"),main);'; 
    echo'}'; 

    echo'function createRadar(){'; 
     echo'radar = CreateElem("canvas");'; 
     echo'radar.id = "radar";'; 
     //echo'context = radar.getContext("2d");'; 
     echo'AddElem(GetElem("body"),radar);'; 
    echo'}'; 

    echo'function cameras(){'; 
     echo'sphere0 = new Sphere(0,0,0);'; 
     echo'sphere0.id="s0";'; 
     echo'scene.add(sphere0);'; 
     echo'camera1 = new THREE.PerspectiveCamera(70, window.innerWidth/window.innerHeight, 1, 10000);'; 
     echo'camera1.matrixAutoUpdate = true;'; 
     echo'Controls.init(sphere0,camera1,0,0,25);'; 

     echo'camera2 = new THREE.PerspectiveCamera(70, window.innerWidth/window.innerHeight, 1, 10000);'; 
     echo'camera2.position.x = 0;'; 
     echo'camera2.rotation.x = -1.75;';       
     echo'camera2.position.y = 110;'; 
     echo'camera2.position.z = 0;';               
     echo'scene.add(camera2);'; 
    echo'}'; 

    echo'function render() {'; 
     echo'requestAnimationFrame(render);'; 
     echo'camera2.lookAt(sphere0.position);'; 

     echo'Controls.update();'; 
     echo'camera2.position.x = sphere0.position.x;'; 
     echo'camera2.position.z = sphere0.position.z;'; 
     echo'camera2.updateProjectionMatrix();'; 
     //echo'renderer.clear();';       

     echo'renderer.setViewport(1,1,148,148);'; 
     echo'renderer.setRenderTarget(radar);'; 
     echo'renderer.render(scene, camera2);'; 

     echo'renderer.setViewport(0,0,window.innerWidth, window.innerHeight);'; 
     echo'renderer.setRenderTarget(main);'; 
     echo'renderer.render(scene, camera1);'; 
    echo'}'; 

답변

0

확실하지입니까?

나는 당신이 this을 시도하고 있다고 생각합니까?

+0

아니요, 이것은 방금 당시의 PHP 파일에 있었던 것입니다 ... –

+0

나는 내가 시도한 것에 상관없이 작동시키지 못했습니다. –

관련 문제