このビデオでは、Blenderバージョン4.2を使用して、フォルダ内のすべてのBlenderファイルのシーンの内容を、テクスチャを含むFBX形式でエクスポートするためのPythonスクリプトをいくつか紹介します。



動画の書き起こし

みなさん、こんにちは!このビデオでは、Blenderバージョン4.2を使用して、フォルダ内のすべてのBlenderファイルのシーンの内容を、テクスチャを含むFBX形式でエクスポートするためのPythonスクリプトをいくつか紹介します。

スクリプトは2つあります。最初のスクリプトは、実行されたファイルのエクスポートを処理し、2番目のスクリプトは、フォルダ内のすべてのBlenderファイルに対して最初のスクリプトを実行します。

これらのスクリプトは私の特定のニーズに合わせて作成しましたが、これは非常に特別なケースだと認識しています。しかし、このチュートリアルは他のケースにも拡張可能です。なぜなら、実際にはBlenderを開かずにスクリプトにパラメータを提供して実行する方法を示しているからです。この方法を使用すると、今回使用するものとは異なるオペレーターやツールでも同様に活用できます!

具体的には、export_scene.fbx 関数を使用して、シーンの内容をFBXファイルにエクスポートすることが可能です。この関数はoperatorsモジュールから使用でき、Blenderマニュアルに記載されているように、出力ファイル名やその他のパラメータを指定することができます。

私が最も関心を持っているのは、テクスチャをモデルのマテリアルとともにエクスポートすることで、Copyモードを有効にしてEmbeddedオプションを使用する方法です。これは、私が以前のチュートリアルで説明した、テクスチャ付きでFBX形式にモデルをエクスポートする方法と同じです。

出力ファイル名に加えて指定する必要がある2つのパラメータは、Path Modeで、これをCopyに設定する必要があり、もう一つはembed texturesで、これをTrueに設定する必要があります。

そのため、テクスチャを埋め込むFBXエクスポートスクリプトでの関数呼び出しは次のようになります:bpy.ops.export_scene.fbx(filepath = sys.argv[-1], path_mode='COPY', embed_textures=True)。

bpyモジュールとsysモジュールをインポートした後、このエクスポートスクリプトに含める唯一の命令はこれだけです。ファイル名はスクリプトにパラメータとして渡され、Path ModeとEmbed Texturesは、テクスチャとして使用される画像をFBXファイル内に保存することを可能にします。

このスクリプトを1つのblendファイルで実行したい場合、ターミナルで次のコマンドを書くだけで十分です:

blender filename.blend --background --python export_embedded_fbx.py -- filename.fbx

しかし、フォルダ内にあるすべてのBlenderファイルに対してこのスクリプトを実行したい場合、ファイルが多いかもしれないので、毎回手動でファイル名を置き換えたくはありません!

そのため、現在のフォルダ内で見つけた各Blenderファイルに対して、そのコマンドを実行する別のスクリプト、またはバッチファイルが必要です。

簡単な解決策は、別のPythonファイルに次の指示を書き込むことです。このファイルは、例えばbatch_export_embedded_fbx.pyと呼ぶことにします。

osモジュールとsubprocessモジュールをインポートした後、ディスク上のファイルにアクセスし、他のPythonスクリプトを起動するために、現在のフォルダのパスをscript_dirという変数に格納します。

これが完了したら、現在のフォルダにあるすべてのBlenderファイルのリストを取得します。

次に、このリスト内の各Blenderファイルに対して、export_embedded_fbx.py Pythonスクリプトを実行し、現在のBlenderファイル名と、拡張子が.fbxでEMBEDDEDというサフィックスを持つ出力ファイル名を渡すループを開始します。

両方のファイルをディスクに保存した後、やるべきことは、batch_export_embedded_fbx.py スクリプトを実行して、希望する結果を得ることだけです。

さて、この短いビデオがお役に立てば幸いです!またお会いしましょう!

チュートリアルを検索

フレーズ、または複数のキーワードをカンマで区切って入力してください。

Francesco Milaneseによる3Dモデル、チュートリアル、コンピューターグラフィックス関連の資料を掲載しています。3Dモデルの使用ライセンスは、各モデルのページに掲載されているリンク先の外部ストアで購入できます。ご利用には、適用されるライセンス条件が適用されます。 Francesco Milanese — イタリアVAT番号:06321250877。お問い合わせ:info@francescomilanese.com


プライバシー及びクッキーの使用に関する拡張情報の通知