Project PLATEAUの3DCGモデルをBlenderで読み込んでBabylon.js Editorで簡単にWebXRコンテンツを作る方法を紹介しようと思ったのですが、3DCGモデルが重いため、複数のfbxファイルを指定すると長時間Blenderが固まってしまい、インポート中なのか失敗してフリーズしているのかが分からなくなりました。
そこで、今回はBlenderで進捗を確認する方法を調べました。WindowsとMacでやり方が異なるので、それぞれ書いています。
Blender 2.83 LTS (Windows10 Pro)
Blender 2.93 LTS (MacOS)
1. WindowsのBlenderで進捗を確認する方法
Windowsの場合は簡単で、Window > Toggle System Console を選択するだけです。
これでコンソールが表示されます。File > Import > Fbx でPLATEAUのデータを選択すると、インポート状況のログが表示されます。
2. MacのBlenderで進捗を確認する方法
Macの場合、Toggle System Consoleのメニューはありません。Blenderのドキュメントやフォーラムをいろいろ調べたり、最新版の2.93に上げてみましたがありませんでした。
さらに調べると、Blender.appからではなく、Blender.appの中に含まれている"Blender"というバイナリから起動して、起動時に表示されるMacのターミナルがSystem Consoleの役割を果たすことがわかりました。
手順です。
Blender.appを右クリックして、「パッケージの内容を表示」を実行します。
この中にある、Contents > MacOS > Blender まで階層を進めます。"Blender"を右クリックし、"エイリアスを作成"をクリックします。
"Blender"のショートカットができるので、これを任意の場所に移動させます。あとは、"BlenderWithConsole"などのように、この"Blender"を好きな名称にリネームします。
リネームした"BlenderWithConsole"をダブルクリックすると、MacOSのターミナルが立ち上がり、その後Blenderが起動します。
あとは、Blender上の動作がこのターミナルに表示されるので、Fbxのファイルインポートも確認することができます。
具体的には、この動画の1:34付近で説明されています。 www.linkedin.com
3. Tips
3.1 Python Consoleは、Python関係の処理のみが表示される
BlenderはPythonをつかって処理の自動化やプラグイン作成が可能です。この中で実行したPythonスクリプトの処理結果を表示させることはできますが、File >importのような通常操作のログは表示されませんでした。
3.2 Delete処理の進行状況はターミナルに表示されない
オブジェクトを選択して右クリック>Delete、あるいは、選択してからXキーを押す、という処理を実行するとオブジェクトを削除できます。このときの処理はターミナルには表示されませんでした。
そのため、PLATEAUの多数のオブジェクトを同時に消すときは削除状況を把握できない可能性があります。
3.3 大量のPLATEAUのfbxデータを読み込むと、ログ上のimport completedの後で画面が固まる
タイトルの通りです。インポート後に描画させる処理に時間がかかるようです。このときの処理はログには表示されませんでした。
4. おわりに
基本的な話ですが、PLATEAUのデータは重いので、そこまで高性能でないPCを使うときは役に立つかもと思って書いてみました。
次回は、PLATEAUのデータをWebXRで表示させる方法を書く予定です。