※このページはAICGゼミ3年生用資料です。
ここでは、画像生成AI【StableDiffusion WebUI】を使用して、3Dモデル作成のための3面図を作成します。主にクライアントワークを想定し、3Dモデラーが普段自身ではデザインしないようなデザイン画をもとに、自身の趣味趣向が介在しない(つまり手癖が通用しない)モデリングを行うことで、表現、技術の幅を広げる訓練を行います。

今回の手法で生成した画像です。こちらの状態でもモデリング用の素材として使用に耐えうるレベルですが、必要な場合はご自身で細かい位置調整などを行います。
はじめに
皆さんが制作をするうえで、得意とするキャラクターと異なるデザインのモデリングに挑戦することにもチャレンジしていきましょう。
等身の低いキャラクターを得意とする方は、等身高めのデザイン、かわいい女の子が得意な方は、中年男性…という具合です。
訓練用にお友達の制作したキャラクターをモデリングするのはとてもおすすめです。ただし、モデリングする際は”3面図”という、少し特殊な画に起こしなおす必要があるのも厄介なところです。
そこで今回は、3Dモデリングに使用できる3面図を画像生成AIに描いてもらい、それをモデリングすることで自身の表現の幅を広げる訓練をしようという試みです。
テンプレート(元画像)データの作成
3Dモデルを使って3面図の元となる画を作成します。勿論手描きで描ける人はどんどん描いてください。
私は筆が遅いので、今回3DCGソフトで作成します。「これから3Dモデリングするのに3Dモデル!?」と疑問に思うかもしれませんが、今回はAIがお手本にするだけのテンプレート(ひな形)データなので完成形と関係ないもので構いません。
AutodeskMayaであればコンテンツブラウザの人型モデルやmakehumanといった体系をコントロールできる外部ソフトから出力するのもおすすめです。
このページでは拙作Departureで使用したキャラを使用します。

Mayaによる配置

ここではAutodeskMayaを使用します。同じキャラクターを複製して正面、横、背面の3方向に並べました。
レンダリング設定

①レンダリング可能なカメラを“front”
②アスペクト比を変えるためMaintain Width/Height Ratioのチェックを外します。
③Width:1216 Height:832に変更します
(これはStable Diffusionが認識しやすい比率と大きさです)。
設定が終わりましたらPNG形式で保存してください。
レンダリング結果


レンダリング結果です。いわゆる”三面図”の状態です。
OpenPose(ControlNet)画像作成
必須ではありませんが、3面図生成の精度が上がることを期待して、ControlNetで使用するOpenPose用データもレンダリングしておきます。

同じ位置、同じポーズでOpenPoseの棒人間君を配置します。

※私のキャラクターはすでにリターゲットがされているのでそのまま表示/非表示を切り替えて表示させました。
OpenPose_HIK for Maya【free data download】
Maya用OpenPoseの参考データです。Human_IKにコンストレイントしてありますのでリターゲットしてお使いください。

レンダリング設定

OpenPose画像の場合、アルファチャンネルは必要ないので☑Don’t Save Alpha channelにチェックを入れます。
(アルファチャンネルが入っていると画像設置時に棒人間君の位置がズレてしまう場合があるので注意)
レンダリング結果

テンプレートデータと同じ位置のOpenPose用画像が作成できました。
AIによる画像生成
StableDiffusion Web UI 予備知識
画像生成AIはStableDiffusion Web UIを使用します。
使用経験のない方は、以下のページにインストール方法と最低限の基礎知識がありますので参考にしてください。


今回はimg2imgという、予め用意した画像を元に新規画像を生成する機能を使用します。

基本設定

①Checkpoint お好きなモデルでお試しください。
②img2img(画像から画像を生成)を選択します。
③プロンプト(呪文)です。AIに描いてもらいたい内容です。コピーペーストしてお使いください。
青字は各自でAIに描いてもらいたい内容をご自由にお書きください。
(masterpiece:1.4), (high quality:1.4),(three sided view:1.4),concept art, official art,full body, white matte colored background,Anime painting,BREAK,a young adult lady , black colored idol costume
今回は私にとって未知のジャンルであるアイドル系の衣装(black colored idol costume )にチャレンジします。
④ネガティブプロンプト(呪文)です。AIに描いてもらいたくない内容です。変更しなくても構いませんが、必要ない要素が描かれた場合は適時ここに書いて指摘してあげましょう。
(low quality:1.4), (worst quality:1.4),normal quality,artifacts,text,nsfw ,background,lighting
⑤先程作成した画像をドラッグ&ドロップします。
[CFG Scale] と [Denoising strength]
ウィンドウ下部のパラメーターを設定していきます。

ここで意識してもらいたい数値は
CFG Scale
Denoising strength
の2種です。
数値を挙げると、より元画像と異なる画像を生成してくれますが、
CFG Scaleは8を越えたあたりから、Denoising strength は0.8を越えたあたりから画像に著しい破綻がみられるようになります。
ControlNet設定
OpenPoseの画像を用意した皆さんはこちらの項目を設定しましょう。ここでは以下のように設定しました。

①☑Enable ControlNet Unit0を有効化します。
②OpenPose用の画像と元画像のサイズを合わせて(1216*832)いる場合は一応入れておきます。
③チェックを入れて画像を読み込める状態にします。
④OpenPose用の画像をドラッグ&ドロップします。
⑤OpenPoseにチェックを入れます。
⑥PreprocesserをnoneにすることでControlNetが元画像から棒人間君を作成せず、OpenPose用の画像を読み込みます。
⑦OpenPoseの学習モデルです。トライアンドエラーの結果、今回はthibaud_xl_openposeを最適解としました。
⑧プロンプトとControlNetのどちらを重要視するか選びます。生成画像の結果をみて適時変更してください。今回はControlNetを優先しました。
画像生成&調整
Generateを押して画像を生成します。

3面図のポーズを保ちつつ、中身が描き換わっていることが確認できました。
お好みでプロンプト,CFG Scale,Denoising strengthといったパラメーターを調整していきましょう。

AIも「かわいい女の子」が得意
これをお読みの皆さんはきっと「若くてかわいい女の子を作りたい、作るのが得意」だと思いますが、AIも同じ傾向です。つまり若くてかわいい女の子を描きたがり、年配の方や男性となると筆が鈍くなる傾向があります。最初にモデリング練習のためには得意とするキャラクターと異なるデザインのモデリングに挑戦してほしいと伝えましたが、皆さんが望む画をAIに描いてもらうためには、適切な画像を用いて学習を行ったモデルを必要とします。この辺りは是非ご自身でいろいろなモデルを試していただけたいところです。現時点ではAIもまだ万能なツールとは言えないのが現状ですね。
バッチ処理
生成画像が思い通りに画像に近づきましたら、たくさんのバリエーションを自動で生成してもらいます
(いわゆる”ガチャを回す”といわれる行為です)。

Batch countが生成する枚数です。
Seedを-1にすることで毎回異なる画像を生成してくれます。

上記は20回繰り返した際のGrid(サムネイル)画像です。
これらの中からモデリングの為の3面図として適切な画像を選んで活用することが出来ます。
斜め45度角の3面図の作成検証
今回検証として、正面、斜め45度、横の3方向による3面図の自動生成を試みました。
3Dモデルを斜め角度から見る際に2Dイラストの雰囲気に近づけるために、オブジェクトそのものをブレンドシェイプなどで歪ませることがあるため、斜め角度の2Dイラストのテンプレートがあれば3Dモデリングの際イメージしやすいと思ったためです。
検証用3D元画像


生成結果

結果としてはControlNetの画像を強めに読み込ませることで斜め45度の3面図の作成は可能ですが、髪型や衣装をプロンプトで変更しようとすると斜め45度の画像が壊れてしまい、両立させるのは難しい状況でした。
今後検証が必要ではありますが、顔部分のモデリング検証程度であれば実用できる可能性が高いです。

まとめ
今回は、3Dモデリングに使用できる3面図を画像生成AIに描いてもらいました。
- テンプレート(元画像)データの作成(3Dモデルを正面、横、背面に配置し元画像を作成しました)
- OpenPose(ControlNet)画像作成(上記と同様の手順でControlNet用の画像を生成しました)
- AIによる画像生成(2つの画像を使用し3面図をAIに生成してもらいました)
ものつくりを目指す皆さんは、好きな絵柄、得意とする表現方法、ジャンルを持っていると思います。好きなものをたくさん作ることで満足度や技術も上がりますが、お仕事となると「好きな」「得意な」もの以外も制作する機会があります。
そのような依頼があった際に「できません」では機会損失に繋がりますし、プロであれば常に流行りの絵柄に寄せていくといった調整も必要になります。
ご自身の得意ジャンルを確立しつつ、どんな依頼が来ても依頼主に満足してもらえるように日頃から訓練をしていきましょう。
ご自身のモデリングにおける表現の幅を広げてもらうことが出来れば幸いです。