3

Open/WebGL は初めてで、ダウンロードした Blender モデルからテクスチャ/スキンを取得して three.js に表示する際に問題が発生しています。Chrome の [ネットワーク] タブから、すべてのテクスチャ ファイルがダウンロードされていることを確認できますが、何らかの理由でそれらがレンダリングされていません。

サンプルの 3D モデルを Blender から three.js にインポートするための基礎として、webgl_loader_collada.html の例を使用しています。

入力には、NASA の Web サイトから入手できる MESSENGER モデルを使用しています。参考までに、NASA 3D モデルの完全なギャラリーはこちらでご覧いただけます

私の現在の手順:

  • Blender でモデルをダウンロードして開く
  • ファイル -> エクスポート -> Collada (.dae)

表示するには:

  • threejs/examples/webgl_loader_collada.html のコピーを変更して、エクスポートされた .dae ファイルを指すようにします
  • 59 行目のスケーリングを削除します。

Blender エクスポートでデフォルト オプションを使用すると、結果のレンダリングにはすべてのテクスチャが欠けています。「マテリアル テクスチャを含める」を有効にすると、モデルの主要部分が金色になりますが、他のテクスチャはマッピングされず、ソーラー パネルはさらに完全に黒くなります。あるいは、「UV テクスチャを含める」もオンにすると、テクスチャのないすべてグレーのレンダリングが得られます。

Blender 用の three.js JS エクスポーター プラグインも試しましたが、その場合 (適切なデモ テンプレートを使用)、「未定義のプロパティ '不透明度' を読み取れません」という JS 例外だけが表示されます。

翻訳プロセスで何か間違ったことをしていますか、それともソース モデルに問題がありますか? 後者の場合、元のモデルまたはエクスポートされたフォームを修正するにはどうすればよいですか?

ありがとう - デビッド

4

2 に答える 2

1

collada の代わりに GLTF 形式を試してみませんか? これは、リアルタイム/Web アセット配信用に設計され、広く採用されている、より最新の形式です。

ブレンダー エクスポーター: https://github.com/KhronosGroup/glTF-Blender-Exporter

.glb ファイルとしてエクスポートしたら、ここにドラッグして確認できます。

https://gltf-viewer.donmccurdy.com/

次に、THREE で THREE.GLTFLoader() を使用してロードします。

ここに画像の説明を入力

于 2018-10-07T21:51:35.163 に答える