2015-12-19 2 views
2

Я только начинаю изучать трёхмерные и JavaScript. Теперь я сталкиваюсь с проблемой, когда я не могу видеть самолет, который я создал. Я полагаю, что положение плоскости находится на [0,0,0], а положение камеры [0,0,200] при просмотре вниз, правильно?камера не может найти объект в three.js

Я понимаю, что проблема такая базовая и надеюсь, что вы, ребята, можете помочь, поскольку я так много пробовал, но не могу найти здесь что не так.

Код:

var scene = new THREE.Scene(); 
var camera = new THREE.PerspectiveCamera(45, window.innerWidth/window.innerHeight, 0.1, 1000000); 
var renderer = new THREE.WebGLRenderer(); 
renderer.setSize(window.innerWidth, window.innerHeight); 
document.body.appendChild(renderer.domElement); 

var width=913; 
var height=423; 

var geometry = new THREE.PlaneGeometry(width, height); 
var material = new THREE.MeshBasicMaterial({ color: 0xff0000, wireframe:true}); 
var plane = new THREE.Mesh(geometry, material); 
scene.add(plane); 

camera.position.z = 200; 
camera.lookAt(new THREE.Vector3(0, 0, 140)); 

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

ответ

1

Первое, что нужно знать, что ось Y вверх/вниз, а не ось Z. Его часто полезно использовать вспомогательные оси:

var axisHelper = new THREE.AxisHelper(5); 
scene.add(axisHelper); 

Вы также должны быть в состоянии сделать внешний вид камеры непосредственно на плоскости с помощью:

camera.lookAt(plane.position); 
Смежные вопросы