0

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 の球があります。ちゃんと映ります。

私は何が欠けていますか?

4

1 に答える 1

1

カメラは飛行機の「背面」を見ています。

平面には 2 つの側面がありますが、見えるのは 1 つだけです。

2 つのソリューション:

1)飛行機の「正面」を見るようにカメラを動かします。

this.camera.position.y = 100;

2)または、doubleSidedフラグを有効にします。

plane.doubleSided = true;
于 2012-05-13T09:19:44.557 に答える