Stable Diffusionでゲーム背景画像を作る(Tales of Synの事例)
(talesofsyn.com)Tales of Syn( https://www.youtube.com/watch?v=ejw6OI4_lJw )で、Stable Diffusionを使って2Dアイソメトリック(通称クォータービュー)RPGの背景を作成した過程を詳しく説明。
使用したツール:
- Stable Diffusion v1.5
- Automatic1111 WebUI
- Alpaca Photoshop Plugin
- Boosting Monocular Depth
- Substance Designer
- Unity URP
- Amplify Shader Editor
初期にはstep countを低めに設定していたため結果はあまり良くなかったが、step countを100台まで増やし、15〜30のCFG(classifier free guidance)を適用したところ、より興味深い結果が得られた。
生成した画像をPhotoshopで編集し、AlpacaというStable Diffusionプラグインを使って解像度を上げた。
既存の照明を取り除き、望む照明を追加するには、2Dシーンのノーマルマップ(normal map)が必要になるが、Boosting Monocular DepthのMiDaSとLeResを使って画像のデプスマップ(depth map)生成を自動化した。
こうして生成したMiDaSデプスマップと反転したLeResデプスマップ画像をSubstance DesignerでHeight to Normal World Unitsノードを使ってノーマルマップに変換し、ノーマルブレンドノードを使って両者を結合。
Amplify Shader Editorで作成したカスタムUnity URPシェーダーのデプスおよびノーマルマップを使い、カメラ移動に合わせて微妙な疑似3D遠近感を加えるためパララックスオクルージョンマッピングを試したが、アイソメトリックビューではデプスが正確でないため、あまり見栄えは良くなかった。
ノーマルマッピングシャドウを実装してディレクショナルライトの影を追加しようとしたが、実際の照明には適していなかった。3Dキャラクターの陰影を処理するカスタムライティングパスとして使える可能性はある。
2K画像を4分割した後、それぞれをimg2imgで最初と同じプロンプトを使って高解像度化したが、境界同士がつながらない問題があった。最終的には同じ工程を経て、既存の4分割高解像度画像同士をつなぐ画像を作成し、Photoshopで合成して最終的に4K画像を作成した。
関連GeekNews:
https://ja.news.hada.io/topic?id=7206
1件のコメント
開発者は、そのほかの開発工程もあわせて公開しました:
Stable Diffusionで3Dキャラクターモデルを作る:
https://talesofsyn.com/posts/creating-3d-character-models
アイソメトリック風のDreamBoothモデルを微調整する:
https://talesofsyn.com/posts/fine-tuning-isometric-style