如何在three.js中修复相机位置

时间:2014-03-09 10:00:56

标签: three.js

我有一个画布(webgl / 3d模型),如下所示 enter image description here 我想把模型放到画布的中心 如下 enter image description here

我的代码如下所示

var SCREEN_WIDTH = window.innerWidth;
var SCREEN_HEIGHT = window.innerHeight;
var container;

var camera, scene;
var canvasRenderer, webglRenderer;

var mesh, zmesh, geometry, materials;

var windowHalfX = window.innerWidth / 2;
var windowHalfY = window.innerHeight / 2;

var meshes = [];

function init() {
    container = document.createElement('div');
    document.body.appendChild(container);

    camera = new THREE.PerspectiveCamera(75, SCREEN_WIDTH / SCREEN_HEIGHT, 1, 100000);
    //camera.position.x = 2000;
    //camera.position.y = 1400;
    //camera.position.z = 1500;

    camera.position.x = 2200;
    camera.position.y = 1600;
    camera.position.z = 1000;

    scene = new THREE.Scene();

    // LIGHTS
    var ambient = new THREE.AmbientLight(0x666666);
    scene.add(ambient);

    var directionalLight = new THREE.DirectionalLight(0xffeedd);
    directionalLight.position.set(0, 70, 100).normalize();
    scene.add(directionalLight);

    // RENDERER
    webglRenderer = new THREE.WebGLRenderer();
    webglRenderer.setSize(SCREEN_WIDTH, SCREEN_HEIGHT);
    webglRenderer.domElement.style.position = "relative";
    container.appendChild(webglRenderer.domElement);
    var loader = new THREE.JSONLoader(),
        callbackKey = function (geometry, materials) {
            createScene(geometry, materials, 50, 50, 10, 2)
        };
    loader.load("ghghjghj.js", callbackKey);
    window.addEventListener('resize', onWindowResize, false);
}

那么我的相机位置应该是什么。

1 个答案:

答案 0 :(得分:1)

尝试增加camera.position.y直到它看起来更好。另外,尝试使用camera.lookAt()。它将vector3作为参数。

相关问题