私は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 呼び出しに関しては、テクスチャ アトラスと単一のテクスチャの方が優れたソリューションですよね?