1

たとえば、Geometry インスタンスにさらにセグメントを設定すると、次のようになりますTHREE.JS

new THREE.PlaneGeometry(1, 1, 10, 10);

平面が (ワイヤフレーム モードをオンにする場合) 10x10 の部分に分割されていることがわかります。

いくつかの生成された画像 (マップ フラグメントなど) を、次の画像 (マップの一部) を使用して平面 (または他のジオメトリ オブジェクト) の各セグメントに適用することは可能ですか?

1 つの平面を作成し、その各セグメントに多くのイメージを適用したいだけです (もちろん、事前に複数のセグメントを準備して)、マップのように見えます。

可能であれば、どのように行うのですか?を初めて使用するWebGL/THREE.JSので、助けが必要です。

PS主なことは、同じテクスチャを持つセグメントの繰り返しについて尋ねているのではなく、1 つのジオメトリ オブジェクトに多くの異なるテクスチャを使用し、それらをそのセグメントに適用することについて尋ねていることです。

アドバイスをありがとう!

4

1 に答える 1

3

UV を上書きして、顔に画像をマッピングできます。

geometry.faceVertexUvs[0].push([
        new THREE.Vector2( 0,0 ),
        new THREE.Vector2( 0,1 ),
        new THREE.Vector2( 1,1 ),    
        new THREE.Vector2( 1,0 ),    
]);

面の materialIndex を設定します。

geometry.faces[i].materialIndex = i;
materials.push(material);

jsfiddle の完全な例

于 2013-11-06T15:08:17.453 に答える