0

私はThree.jsモジュールとColladaLoader.js機能を数週間使用しており、何が起こっているのかについてかなり自信を持っています.

今日まで、さまざまな複雑さのモデルをコードに問題なくロードしてきました。

ここにコードの例を示します。

http://ec2-54-213-35-209.us-west-2.compute.amazonaws.com/

モデルは非常に小さく、グリッドの中央にあるため、拡大して表示する必要があります。

これは、Web コンソールからのエラーです。

Error: WebGL: DrawElements: bound vertex attribute buffers do not have sufficient size for given indices from the bound element array @ http://ec2-54-213-35-209.us-west-2.compute.amazonaws.com/three.min.js:455

そのため、collada モデルを取り込むと、要素リストが何らかの形でめちゃくちゃになり、一部が欠落してしまいます。

オブジェクト全体のマテリアルを手動で次のように設定すると、

setMaterial(result.scene, new THREE.MeshBasicMaterial({color: 0xff0000}));

その後、シーン内のオブジェクトは問題なく、エラーも発生しないので、これはテクスチャに関連していると確信しています。

私は他のモデルをうまくロードしているので、私のコードはうまくいくと確信しています。ただし、これは複数のテクスチャを持つ最初のモデルになると思います。

とにかく glelement 呼び出しに関しては、テクスチャ アトラスと単一のテクスチャの方が優れたソリューションですよね?

4

1 に答える 1

0

答えが遅いかもしれませんが、実際には colladaLoader の問題でした。

2日前、threejs (開発ブランチ v65) のアップデートがリリースされました

ローダーは、各マテリアルにマルチテクスチャを使用して複雑なモデルを処理できるようになりました。

それがあなたを助けることを願っています

于 2013-12-26T09:15:02.050 に答える