三个JS中的平原地形

时间:2012-05-13 06:02:49

标签: javascript three.js terrain

我正在尝试使用ThreeJS绘制平面地形,但它不起作用。

这是我的飞机创建代码:

var plane = new THREE.Mesh(new THREE.PlaneGeometry(300, 300), new THREE.MeshBasicMaterial({
        color: 0x0000ff
    }));
plane.overdraw = true;
this.scene.add(plane);

非常直截了当。实际上我只是从某个网站上复制了它。

这是我初始化场景和相机的方式:

    this.camera =
        new THREE.PerspectiveCamera(
        45, // view angle
        width / height, // aspect
        0.1, // near
        10000); // far

    this.scene = new THREE.Scene();

    // add the camera to the scene
    this.scene.add(this.camera);

    // the camera starts at 0,0,0
    // so pull it back
    this.camera.position.z = 800;
    this.camera.position.y = -100;

我的中心还有一个半径为20的球体。它显示得很好。

我错过了什么?

1 个答案:

答案 0 :(得分:1)

相机正在看着飞机的“背面”。

一架飞机有两面,但只有一面可见。

两种解决方案:

1)移动相机以查看飞机的“正面”:

this.camera.position.y = 100;

2)或者,激活doubleSided标志:

plane.doubleSided = true;