2

three.js では collada モデルが奇妙に見えます。スクリーンショット:

警察

コードは非常に単純で、特別なことは何もありません:

loader.load( 'models/police_car.dae', function ( collada ) {
  dae = collada.scene;

  init();
});

google sketchup 倉庫からモデルをダウンロードしました。【リンク

私はthree.jsが初めてなので、何が問題なのかわかりません。それを修正するために関数を呼び出す必要がありますか?

前もって感謝します、

4

1 に答える 1

4

これは、背面がレンダリングされていないために発生していると思います。COLLADA には、面を両面にするかどうかを指定する方法がありません。Google Earth は、次の方法を使用してこの情報をエクスポートします。

<extra>
  <technique profile="GOOGLEEARTH">
    <double_sided>1</double_sided>
  </technique>
</extra>

doubleSidedThree.js は、面が両面かどうかを示すために呼び出されるオブジェクトの属性を使用しますが、ColladaLoader.js は<extra>プロパティを設定するタグを探しません。サポートを追加するには、three.js でバグを報告する必要があります。

編集:これは dev ブランチで修正されたようです。このモデルをロードすると、次のようになります。

ここに画像の説明を入力

半透明の窓から車内のダッシュボードがはっきりと見えます。

于 2012-07-18T15:44:58.547 に答える