AIゲーム開発研究室
実装前に不足したキャラクター素材を追加制作する
AIゲーム開発ドキュメント
第28回 実装前に不足したキャラクター素材を追加制作する
ゲームの実装設計を進めたことで、パンタに新たなキャラクター素材が必要であることが分かった。
必要になったのは、ゲーム中のキャラクター交代時や終了時などに使用する「大喜び」のアクションである。
当初の素材設計では想定していなかったが、実際のゲームの動きを具体的に考えていく中で必要性が明らかになった。
そこで、実装へ進む前にいったん素材制作へ戻り、パンタの追加画像を制作することにした。
連続アニメーションを作らせない
これまでの実験では、生成AIに歩行などの連続した動作を一度に制作させた場合、足の運びやポーズの連続性を正確に制御することが難しかった。
そこで今回は、完成したアニメーションそのものを生成AIに作らせる方法を採用しなかった。
生成AIには、
「大喜びしているパンタの異なるポーズを複数制作する」
ことを求めた。
実際のジャンプや上下移動などは、画像として描かせるのではなく、Unity側で制御する。
つまり、
画像生成AIには「ポーズ」を作らせ、ゲーム上の「動き」はUnityで作る。
という役割分担である。
「違うポーズ」を言葉で定義する
しかし、単に、
「違う喜びのポーズを複数作ってください」
と指示しただけでは、腕の位置だけが少し違う、ほとんど同じ画像が生成される可能性がある。
そこで今回のプロンプトでは、ポーズの違いを具体的に言語化した。
- 腕の位置を変える
- 脚の位置を変える
- 身体の傾きを変える
- 左右への重心移動を変える
- 表情を変える
重要なのは、
「差分を作るために、身体のどこを変化させるのか」まで言語化したこと
である。
その結果、顔の向きも含め、身体全体の動きが異なる7種類の大喜びポーズが生成された。
単なる腕の差分ではなく、身体全体の重心やシルエットが異なる素材を得ることができた。
生成された画像の中から必要なポーズを選択し、Unity側の動きと組み合わせてゲーム内のアクションとして使用する。
「イラスト」から「ゲーム素材」へ変換する制作工程
今回も、人間による加工を経て、大喜びしているパンタの素材を完成させた。
実装設計から素材制作へ戻る
今回、もう一つ重要だったのは、ゲーム開発の工程が一方向には進まなかったことである。
素材制作が終わったから実装する。
それだけではなかった。
実装方法を具体的に考えたことで不足している素材が判明し、再び素材制作へ戻った。
設計
→ 素材制作
→ 実装設計
→ 不足素材の発見
→ 素材制作へ戻る
→ 実装
という流れが実際に発生したのである。
これは失敗による後戻りではない。
実装を具体化したからこそ発見できた、新たな制作条件である。
AIを利用したゲーム開発においても、最初にすべてを決めて一本道を進むのではなく、制作と実装を往復しながら必要なものを発見していく。
今回のパンタの追加素材制作は、その「戻り」が実際の制作工程の一部であることを示す実例となった。
今回使用したプロンプト
以下が、今回パンタの「大喜び」素材を制作するために画像生成AIへ入力したプロンプトである。
森のどんぐり大作戦
パンタ 大喜びアクション素材 制作プロンプト Ver.1.1
制作目的
2Dゲーム「森のどんぐり大作戦」に使用する、
パンタの「大喜び」アクション素材
を制作してください。
ゲームクリア時、キャラクター交代時、登場シーンなどで使用できる、パンタらしい元気でかわいい喜びのポーズを複数制作します。
生成されたポーズの中から、最終的に3カット程度を選び、ゲーム内の喜びアクションとして使用します。
使用する基準画像
添付する
「パンタ キャラクターマスター(公式基準画像)」
を必ず基準画像として使用してください。
以下のデザインを忠実に維持してください。
- 顔
- 耳
- 目の周囲の黒い模様
- 丸く大きな体形
- 白黒の毛並み
- 手足の太さ
- キャラクター全体の柔らかな水彩表現
- 青いリュック
特に、
青いリュックは必ず背負わせてください。
喜びのポーズによってリュックが消えたり、別の形になったりしないようにしてください。
アクション
パンタが、
「やったー!」と大喜びしている瞬間
を表現してください。
ただし、今回はジャンプアニメーションそのものを制作するのではありません。
パンタの足は地面についている状態にしてください。
ジャンプや上下移動はゲーム実装時にUnity側で行います。
そのため、画像内ではパンタ自身を空中に浮かせないでください。
喜びポーズのバリエーション
同じポーズを繰り返すのではなく、
身体の動きがはっきり異なる複数の喜びポーズ
を制作してください。
例えば、
- 両手を高く上げて大喜びする
- 両手を左右に大きく広げる
- 片手を高く上げ、もう片方の手を横に広げる
- 両手を胸の近くまで引き寄せ、うれしそうに力を込める
- 身体を少し左右どちらかへ傾けながら喜ぶ
- 胸を張って誇らしそうに喜ぶ
など、
シルエットを見ただけでも違いが分かるポーズ
にしてください。
重心の変化
単純に腕の形だけを変えないでください。
各ポーズで、
パンタの身体全体の重心を変化させてください。
例えば、
- 重心が中央
- 少し左脚側へ重心を移す
- 少し右脚側へ重心を移す
- 身体を少し左へ傾ける
- 身体を少し右へ傾ける
- 胸を張って上半身を少し伸ばす
など、
身体全体を使って喜びを表現してください。
ただし、
転びそうな極端な傾きにはしないでください。
ゲームキャラクターとして自然に成立する範囲にしてください。
足のポーズ
足の形もすべて同じにしないでください。
- 両足を自然に開く
- 片足を少し前へ出す
- 片足を少し横へ出す
- 膝を少し曲げる
- 左右どちらかの脚に重心を乗せる
など、上半身の動きに合わせて自然に変化させてください。
ただし、
両足の少なくとも一部は地面に接している状態
にしてください。
ジャンプしているポーズにはしないでください。
表情
パンタらしい、
非常にうれしそうな表情
にしてください。
表情にも少し変化をつけてください。
- 大きな笑顔
- 口を開けた満面の笑顔
- 口を閉じたうれしそうな笑顔
- 目を少し細めた笑顔
などを混ぜてください。
すべて同じ顔にしないでください。
ただし、パンタの顔そのもののデザインは変更しないでください。
籠について
籠は持たせないでください。
今回は喜びアクション専用素材です。
リュックについて
青いリュックは必須です。
パンタが腕を上げたり身体を傾けたりしても、リュックは背中に自然に装着された状態を維持してください。
背景
背景は完全な透明にしてください。
白背景、単色背景、森、地面、影、装飾などは描かないでください。
パンタだけの独立したゲーム素材にしてください。
重要事項
今回の目的は、
完成した連続アニメーションを一度に作ることではありません。
まず、
パンタの喜びを表現する、異なる複数のポーズ候補を制作すること
が目的です。
生成された候補を人間が確認し、その中からゲームアクションとして自然につながる3カット程度を選択します。
したがって、
無理に連続動作として整合させるより、それぞれのポーズの違いと表情の豊かさを優先してください。
禁止事項
- パンタのキャラクターデザインを変更しない
- 青いリュックを消さない
- 籠を持たせない
- どんぐりを持たせない
- 空中に浮かせない
- ジャンプさせない
- 全カットを同じポーズにしない
- 腕だけを変えて身体を同じ姿勢にしない
- 全カットを同じ表情にしない
- 背景を描かない
- 地面や影を描かない
- 文字を入れない
パンタらしい、見ているだけで「やったー!」という声が聞こえてきそうな、元気でかわいい大喜びのポーズを複数制作してください。
こうして、実装に必要なパンタの追加素材が揃った。
そして今回の制作によって、
「異なるポーズを作れ」と指示するだけではなく、何を変化させれば異なるポーズになるのかを言語化する。
という、画像生成AIによるゲーム素材制作の新たな方法も確認することができた。
次はいよいよ、これまで制作してきた素材をUnityへ持ち込み、実際のゲームとして動かしていく。








