Blender ウォッチング
テキストの指示で3Dモデルを生成するAI「Point-E」を「Blender」に組み込むアドオン
世界中の3DCGモデラ―を恐怖に陥れた3D版「Stable Diffusion」でモデリングできるかな
2023年1月20日 15:48
本連載では、無料の高機能3Dモデリングツール「Blender」の使い方や関連情報を幅広くお伝えします。
今回は、以前公開時に世界中の3DCGモデラ―を恐怖に陥れた(?)、機械学習による形状の自動生成ツール「Point-E」を、「Blender」用のアドオンとして利用できるようにした「DMT Meshes」(DMT Meshes contributors作)をご紹介します。
必須構成
このアドオンも他のAIツール同様、以下のように導入可能な環境が制限されています。また初回実行時にもダウンロードが発生します。時間に余裕がある時に行ってください。
- Windows OS
- CUDAが利用可能なNVIDIA製グラフィックカード。
- ストレージの空き:最大11.4GB(デフォルトでは5.5GB)
本記事では「Windows 10 Pro x64」と「NVIDIA RTX2060 12GB」、「Blender 3.4.1」、「DMT Mesher 0.0.1」で動作を確認しています。アドオンのバージョンアップにより、インストール方法などが変わることがあります。ご了承ください。
デフォルトではこのアドオンは「C:¥Users¥(ユーザー名)¥AppData¥Roaming¥Blender Foundation¥Blender¥(Blenderバージョン)¥scripts¥addons¥dmt_meshes」以下にインストールされますが、空きが足りない場合は、ZIP(Portable)版の「Blender」を別のドライブ(D:など)にインストールし、そちらにアドオンをインストールすることもできます。詳しくは過去の記事をお読みください。
入手とインストール
入手は下記リンク先のページから行います。「Windows: 」の左側にあるリンクからダウンロードしてください。
Releases · Firework-Games-AI-Division/dmt-meshes
「Blender」を起動し、[編集]メニューの[プリファレンス...](①)からプリファレンスを開き、[アドオン]タブ(②)内の[インストール...](③)で入手した「dmt_meshes-win-cuda.zip」を指定します。
しばらくすると、このアドオンのパネルが表示されます。下図の囲み部分をクリックして有効化してください。「v0.0.1」の時点ではパネルに設定はありません。
使用方法
- 「3Dビューポート」内で[N]キーを押すか、右端の[≺]をクリックして「サイドバー」を表示します。
- [DMT]タブをクリックし、パネル内の「プロンプト」に生成したい物を英文で入れ、パネル下部の[Generate]をクリックします。
とりあえずはデフォルトで入力されている「A corgi」(コーギー)で実行してみましょう。
初回は「Point-e」のトレーニング済データをダウンロードします(890MB)。作業の進捗を知りたい場合は、[ウィンドウ]メニューの[システムコンソール切り替え]を実行してください。なお、このシステムコンソールウィンドウを間違って閉じてしまうと、「Blender」本体も閉じますので注意してください。
その後も「base checkpoint」と「upsampler checkpoint」ファイルがダウンロードされ、「SDFモデル」の生成と読み込みが行われた後、「ポイントキャッシュ」と「メッシュモデル」(Text to Meshモード時)が表示されます。
Run Mode設定と処理の流れ
「Run Mode」とは、名前の通り実行のモードです。パネル内の[Run Mode]で設定でき、デフォルトの「Text to Mesh」モードでの処理の流れは次のようになります。
- 「プロンプト」から「Point-e」が文字列を受け取り、「ポイントクラウド」(点の集合体)を作成
- 上記のアドオンがインストールされたフォルダーの「data/pc」内に「.npz」ファイルとして保存
- ポイントクラウドから、ランダムな名前の「メッシュオブジェクト」を生成
ポイントクラウドはパネルの「ポイントクラウド」内にもリスト表示され、後述の「Point to Mesh」モードでソース指定するのに使用されます。ちなみにリストないポイントクラウドは一番上が最新です(時間順)。
Run Modeを「Point to Mesh」にして既存のポイントクラウドからメッシュデータを再生成したり、「Text to Point Cloud」でポイントクラウドのみ生成することもできます。
メッシュ変換の調整
[詳細設定]では、ポイントからメッシュに変換する方法やパラメーターの調整が行えます。
「PC to mesh method」にはデフォルトの「openAI」と「dmtet」が選択できるようですが、残念ながら「dmtet」はエラーメッセージが出て実行できませんでした。
「Gridres」はメッシュの解像度で、「openAI」で唯一利用可能なパラメーターです。大きくすると細かくなりますが、生成に時間がかかり、小さくすると粗くなりますが、生成時間が短縮されます。デフォルト値は「128」です。
まず小さい「Gridres」値で「Text to Mesh」でモデルを作成し、いいのができれば「Gridres」値を大きくして「Point to Mesh」で再生成するのが効率的です。