ブレンダーからモデルをインポートして、すべての頂点をループしようとしています。インポートには colladaloader を使用しています。すべて正常に動作し、モデルがロードされています。しかし、モデルの面は必要ありません。目的のために必要なのは頂点の位置だけです。
これを行う方法があるかどうか誰かに教えてもらえますか? たとえば、インポートされたモデルのすべての頂点をループするループですか?
ありがとう、トモ
わかりました...
console.log() は、ロードされた .dae ファイルの背後にある構造を確認するのに大いに役立ちました。
loader.load( './models/collada/test.dae', function ( collada ) {
for(i = 0; i < collada.scene.children.length; i++) {
if(collada.scene.children[i].geometry) {
for(j = 0; j < collada.scene.children[i].geometry.vertices.length; j++) {
//do stuff...
}
}
}
//...
} );
さて、ローダー モジュールを使用して、Blender モデルをメッシュとしてインポートします。メッシュには、ベースとなるジオメトリがあります。また、ジオメトリには頂点配列があります。それを繰り返すだけですか?モデルを表示したくない場合は、シーンに追加しないでください。一見すると、あなたの質問はあまりよく研究されていないように見えます。Mesh オブジェクトの構造を確認し、Three.js の例を参照してください。
geo
ジオメトリを表す場合:
for (var i = 0; i < geo.vertices.length; i++)
{
var v = geo.vertices[i];
// do stuff with v...
}