各面がランダムな色で塗りつぶされたジオメトリをレンダリングしようとしています。THREEjsの各面にランダムな色を設定すると、黒いオブジェクトになります。
私はgeometry.faces
まで繰り返し、各顔にランダムな色を設定します。それに応じて、私はメッシュに追加される新しいマテリアルを作成します。私には必要なフラグをすべて設定しているように見えますが、私のオブジェクトは現場で黒く表示されます。
シーンには2つの指向性ライトと周囲光が含まれています。 THREE.MeshPhongMaterial
を使用する場合、オブジェクトも黒く見えますが、指向性のある光からの反射があります。ここで
コードです:
var geometry = new THREE.Geometry().fromBufferGeometry(object);
for (var i = 0; i < geometry.faces.length; i ++) {
var face = geometry.faces[ i ];
face.color.setHex(Math.random() * 0xffffff);
}
var material = new THREE.MeshBasicMaterial({ color: 0xffffff, vertexColors: THREE.FaceColors });
var mesh = new THREE.Mesh(geometry, material);
mesh.dynamic = true;
mesh.geometry.colorsNeedUpdate = true;
scene.add(mesh);
私はthree.jsの最新バージョンを使用しています:
R84誰もが私が行方不明ですか見ていますか?
を。 – WestLangley
本当ですか?今はこのように動作します。私はThree.jsに初めてのことなので、私は尋ねています。これは偶然働いていますか?違いはなんですか? –
私が提案したものを試しましたか? – WestLangley