glb

Threejs(Java script)

読み込んだMMD向けファイル(PMD)をテクスチャ付きでThreejsで読み込めるglbで出力する(Blender)

やりたいことBlenderにてインポートしたMMD向けファイルのモデルをテクスチャ付きThreejsで表示可能なglbで出力します。下の記事の通りglbを出力すると多くのマテリアルはうまくいきます。しかし下の目のようにテクスチャの情報を引き継がないと正しく表示できないものがあります。そのためテクスチャ付きのマテリアルをエクスポートする必要があります。あにまさ氏の初音ミクのモデルを例に進めさせていただきます。マテリアルの修正対象のマテリアルの特定マテリアルを一つ一つ設定を変更して対象のマテリアルを特定します。(例えば色を変え目の色が変わるマテリアルを探します。)今回の例では”材質6”が対象の目の...
Blender

読み込んだMMD向けファイル(PMD)をThreejsで読み込めるglbで出力する(Blender)

やりたいことBlenderにてインポートしたMMD向けファイルのモデルをThreejsで表示可能なglbで出力します。あにまさ氏の初音ミクのモデルを例に進めさせていただきます。読み込み方法は下を参照。マテリアルの変更PMDファイルをインポートした際にマテリアルにはMMDSharderDevというものが使用されていますがが、これはglbに出力したときに正しくThreejsで表示できません。そのためマテリアルの設定を変更する必要があります。”初音ミク_mesh”を選択します。マテリアルのプロパティを選択します。リストから材質を一つ選択し、”ノードを使用”をクリックし非選択状態にし、ブレンドモードを...
Blender

glTFファイル保存時にテクスチャを外部ファイルとして保存する(Blender)

やりたいことBlenderでglTF 2.0でエクスポートする際に単一ファイルでなく、テクスチャを外部ファイルとして保存する。環境Blender:3.4.1フォーマットの変更左上の”ファイル” → ”エクスポート” → glTF 2.0(.glb/.gltf) からエクスポートダイアログを表示します。表示されるダイアログの右側のフォーマットをクリックします。glTF Separate(.gltf + .bin + テクスチャ)を選択して保存します。結果選択したフォルダに、指定したファイル名.gltf、指定したファイル名.bin、テクスチャファイル(画像ファイル)が保存されます。例)3D.glt...
Blender

Blenderで作成した3DオブジェクトをThreejsで読込、表示するまとめ

やりたいことBlenderで作成した3DオブジェクトをThreejsで読込、表示します。関係する複数の記事が書きましたのでまとめます。(随時更新)保存 → 読込/表示(基本)Threejsで読込、表示するにはglTFでエクスポートします。Blenderで保存単一ファイル(.glb)でエクスポートする方法分割ファイル(.gltf)でエクスポートする方法(.bin、テクスチャファイルが別で保存されます)Threejsで読込/表示圧縮したglTFの扱いBlenderで圧縮glTFでエクスポートすることができますが、Threejs側の対応も必要です。.gltfファイルも同様の対応で読み込み可能です。圧...
Threejs(Java script)

DRACOLoaderをWebにUploadすると動作しない(DRACOLoaderでwasmを使用しない方法)(Threejs)

やりたいこと以下の実装を行ったときにローカルでは動作するが、WEBにUplodaすると動作しない際の修正方法ローカルで動作するJavascriptをConohaにUploadすると以下のようなエラーが表示され読み込まれませんでした。4f251973-f58e-42c3-b428-9252c0610ca9:39 failed to asynchronously prepare wasm: CompileError: WebAssembly.instantiate(): expected 97 bytes, fell off end @+1874f251973-f58e-42c3-b428-925...
Threejs(Java script)

圧縮されたglTF(.glb)ファイルをLoadして表示(Threejs)

やりたいこと圧縮されたglTF(.glb)ファイルをThreejsを読み込む。圧縮方法は↓環境Threejs: r150Chrome: 111.0.5563.65準備圧縮なしのソースおよび環境の準備は↓の記事を参考にしてください。DRACOLoaderを用いた読み込みフォルダ構成フォルダ構成は以下の通りです。dice‐c.glbが読み込み対象の圧縮されたglTFファイルです。DRACOLoader.jsファイル、dracoフォルダを追加しています。ともにThreejsに含まれるファイルです。ROOT| dice-c.glb| index.html|\---js +---libs | | 3d....
Blender

glTF(.glb)ファイルを無料で作成する

やりたいことMicrosoftやThreejsなどが推奨しているglTF(.glb)ファイルを作成したい。Threejsでのロード方法は↓環境Blender:3.4.1ペイント 3Dで出力Window10ではいつの間にか入っていた、Windows11では標準では非搭載になったペイント 3Dではglbファイルで出力できます。保存方法左上の”メニュー” → ”名前を付けて保存” → ”3D モデル” からglbファイルが保存できます。フォーマットはglbと3MFから選択できます。ちなみにペイント 3Dには豊富なライブラリが含まれているのですが、ライセンス(著作権)が明確でなく限られた状況で以外では...
Threejs(Java script)

glTF(.glb)ファイルをLoadして表示(Threejs)

やりたいことThreejsやMicrosoftが推奨されているglTF(.glb)ファイルをThreejsを簡単に読み込みたい。環境Threejs: r150Chrome: 111.0.5563.65準備モジュールを読み込めるようにするTypeがモジュールのJavaScriptを使用します。ローカルで使用する場合はChromeを特別な起動方法で起動する必要があります。通常のChromeはTypeがモジュールのJavaScriptを読み込むことができません。Chromeを起動時に以下の引数を追加します。 --allow-file-access-from-filesChromeのショートカットを作...