Blender ウォッチング
画像生成AI「Stable Diffusion」の画像を「Blender」のテスクチャにする方法
2022年10月7日 15:36
本連載では、無料の高機能3Dモデリングツール「Blender」の使い方や関連情報を幅広くお伝えします。
今回は前回インストールした画像生成AI「Stable Diffusion」を「Blender」のテクスチャにできるアドオン「Dream Textures」の使用方法や注意点などを解説します。
テスト環境
筆者のテスト環境は以下の通りです。解説は「Blender 3.3」Windows版」と、「Dream Textures」v0.0.6を使用して行っています。
- 【CPU】Intel Core i7-2600
- 【OS】Windows 10 Pro
- 【GPU】NVIDIA GeForce RTX 2060 12GB
- 【メモリ】16GB
アドオン自体の動作環境については、前回をご覧ください。
実行時はメモリを大量に消費するため、実行前に作業中のファイルは保存しておき、他のアプリは終了してなるべくメインメモリを空けておくことをお勧めします。
利用方法
画面を[Shading]ワークスペース(①)に切り替え、[シェーダーエディター]右端の[≺](②)をクリックしてサイドバーを表示します。
- [Dream Texture]タブ(①)をクリックして切り替えます。
- パネル内(②)の[subjects]に欲しいテクスチャの「呪文」(プロンプト)を入れます(「wood tile」など)。
- [幅]と[高さ]にテクスチャの解像度を指定します。大きな数値を入れるとVRAM容量によっては動作しなくなりますので注意しましょう。
- シームレスにしたい場合は下の[seamless]をONにします。
- 最後に[Generate](③)をクリックすると実行します。
パネル内に現在行っている処理が表示されます。初回起動時と後述の[Full Precision]オプション切り替え時、エラー発生後は「Loading Model」と表示され、読み込みに大量のメインメモリと時間を費やします。しばらく待ちましょう。
左端の[画像エディター]内に画像が表示され、「Step 3/25」のようにタイトルに進捗状況が表示されとともに、サイドバーのパネル内にもプログレスバーが表示されます。
画像が完成すると、同時に[シェーダーエディター]内に[画像テクスチャ]ノードが追加され、「プリンシプルBSDF」ノードにつないで利用できるようになります。
この画像は自動的に「パック」(添付)され、現在作業中の「blend」ファイルの保存時、ファイルの一部として一緒に保存されます。また、[画像エディター]のハンバーガーメニュー(≡)の[画像]-[名前を付けて保存]コマンドで独立したファイルとして保存もできます。
詳細な設定
パネル内の[Advanced Configuration]には、様々な設定オプションがあります。
Full Precision
画像の品質が向上します。切り替え時にメインメモリを、生成中にVRAMを大量に使用します。容量が足りない場合は無効になります。
実際に画像を出力してみたところ、2つの画像間に差異を確認できたものの、品質が向上しているのかどうかは不明です。
ランダムシード
生成には呪文だけでなく、乱数も関係します。アドオンが画像を生成すると、使用した乱数の「シード」が名前に付けられ、パネル内の[シード]にも入力されます。
[ランダムシード]をOFFにすると、この[シード]値を使用し、同じパターンの画像を生成します。ただし執筆時点(v0.0.6)では後で数値入力したり、解像度を変更すると同じパターンにはなりません。つまり、直前の画像に[Full Precision]オプションと次の[ステップ]、[CFG Scale]を試す以外の用途はないようです。
ステップ
小さいほどすぐ終わり、大きいほど高品質になります。
CFG Scale
呪文を考慮する強さ。小さくすると呪文よりランダムなパターンの影響が大きくなります。「1.0」以下を入れるとエラーになりますので注意。
Sampling
サンプリングタイプを変更します。前バージョンでは如実に画像が変わりましたが、本バージョンでは挙動が変わったのか、シードが同じ場合、どれも同じ画像しか生成してくれなくなったようです。今後また挙動が代わる可能性があります。
既存の画像の変更
既存の画像ファイルを参照し、「subjects」で変化を付けることもできます。あまり大きな画像を参照させると、VRAMメモリ不足で生成できませんので注意してください。
画像の指定方法は2つあります。
Inpaint Open Image
[UVエディター]や[画像エディター]で開いている画像に変化を付けます。生成された画像は自動的にこれらのエディターに設定されますので、次々と変化を加えていきたい時に便利です。
呪文設定のコツ
食パンのカット面が欲しいのに「bread」を入れたら全体が出てきたり、「fur」と入れたら毛皮を着ている人が出てきたりする時は、「bread slice」「fur surface」のように、「surface」「floor」「paper」「wall」「Slice」「Skin」を付けると、望みの結果になる確率が高くなります。
まとめ
承知していることだとは思いますが、現時点では、RAMの消費量や生成時間、VRAMによる解像度の制限、そしてアドオンが加えた変更で実在しない物のテクスチャになってしまう可能性があるため、少なくともフォトリアル用途では素材テクスチャサイトや同様のアドオンを使う方が時間的にも品質的にもいいと思います。
看板や本などのデザインに使用する方がいいのかもしれませんが、こちらはこちらで知らないうちに他人のデザインやキャラクターを使用してしまう危険があります。
下は前回の画像作成時に「gohan」と入れて生成させてみた画像です。こういうファンアートらしき物が混じることがあるので注意が必要です。
一方で、既存の画像に変化を与える機能は重宝するかもしれません。サビ(rust)や汚れ(grunge)、ひび(crack)などはうまく動作しているように思います。
終わりに
最後に少し批判が並んでしまいましたが、それでも使用中は次々とテクスチャを作って楽しく遊んでしまいますし、意外な物が生成されてそれが発想の助けとなることもありました。商用はさておき、ホビー用途では上記の問題は気にしなくてもいいかもしれません。
ではまた。