AOYAMA Koji's プログラミングブログ - プログラミングを楽しく体験

【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】プログラマー向け実装解説

2026/02/09
【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】

 Gemini (gemini-3-pro-image-preview) による画像生成プロンプトの調整過程を解説します。 指定した要素をすべて画像に反映する「正確な網羅性」という強力な武器を活かしつつ、 AIが自律的に「説明資料」にしてしまう傾向をどう制御し、エンタメ画像へと導いたか。その試行錯誤の実例を共有します。
 なお、もともとは ChatGPT (gpt-image-1) で画像生成する予定でしたが、 開発期間中に Gemini3 が発表されたため、検証して変更しました。

 本ゲーム実装は『キャラAIバトルロイヤル』実装概要に記載していますので、併せてご参照ください。

【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 キャラAIバトルロイヤル  ゲーム本体は『キャラAIバトルロイヤル』でプレイ可能ですので、 ぜひ新ジャンル「AI判定ゲーム」を体験してみてください。


【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】

プログラミングブログ記事一覧


[PR]

【画像生成AI比較】「映える」ChatGPTと「網羅する」Gemini


 最初に結論として、ChatGPT (gpt-image-1) と Gemini (gemini-3-pro-image-preview) の画像生成機能の評価および特徴を比較します。
 ここでの比較は、単なる機能テストや「動かしてみた」レベルのものではありません。 『キャラAIバトルロイヤル』を実際に運用・商用提供するという前提の下、 「商業ベースで耐えうるコストパフォーマンスとクオリティー」というシビアな基準で、 徹底的な選定を行ったものです。

Gemini (gemini-3-pro-image-preview):全要素を拾い上げる正確な網羅性

 Gemini (gemini-3-pro-image-preview) による画像生成の最大の特徴は、「正確な網羅性」にあります。 指定した要素をすべて画像に反映する完遂力は極めて優秀です。
 一方で、自律的にエンターテインメント性の高い演出を加えることはありません。 ランダムな配置を指示しても均等に整列させてしまうなど、むしろ「自律的に説明資料のような構成にする」という強い傾向があります。
 『キャラAIバトルロイヤル』はゲームであり、描いているのは決勝グループに残ったキャラクターたちの、熱いバトルシーンです。 求めているものは説明資料ではなく、心躍るエンターテインメント性です。
 ただし、時間はかかりましたが、キャラクター配置などをより具体的かつ詳細に指示することで、この特性を制御し、採用可能なクオリティーまで引き上げることができました。 キャラクター欠落のない信頼性は保てており、最終的には Gemini を採用しています。

ChatGPT (gpt-image-1):勝手に映える自律的な演出力

 ChatGPT (gpt-image-1) による画像生成の最大の特徴は、「指示以上の演出を勝手に加えてくれる」という自律性の高さにあります。 少ない指示でも自律的に補完し、エンタメ性の高い「映える」絵を生成してくれます。
 一方で、指定キャラクターを全員描いてくれないなどの厳密なルールを守らせる点には課題がありました。
 『キャラAIバトルロイヤル』における画像生成は、決勝グループに残ったキャラクターの召喚者、つまりプレイヤーの皆さまへのご褒美の意味があるため、 この課題は大きな意味を持ちます。
 結論としてはGeminiを採用しました。

画像生成プロンプトGemini (gemini-3-pro-image-preview) 編


 Geminiを用いた画像生成プロンプトの調整結果は以下の通りです。 プロンプトとは、AIに対する指示のことです。
■■■指示書■■■
・これは商用AI判定ゲーム(AIが判断しその揺れや創造性を楽しむゲーム)の指示書の一部です
・以下の要件に従い 1024x1024 (アスペクト比1:1)の画像の生成をお願いします
各要素解説
・内容: 画像で表現すべき内容
・実況: バトルシーンの雰囲気(忠実に再現する必要無し)
・キャラリスト: 全登場キャラクター(必ず全員描画)
・要件: 画像描画要件
・重要: 特に重要な要素を記載(必須)
■■■内容■■■ - キャラ愛が勝敗を決めるバトルロイヤルにおける決勝グループの迫力あるクライマックスバトルシーン - 全キャラクターがテンション最高潮に技を繰り出し躍動している(ダメージを受けてやられているキャラクターはいない)
■■■実況■■■ ###REPLACE_LIVE###
■■■キャラリスト■■■ ###REPLACE_CHARACTER###(合計###REPLACE_COUNT###キャラクター)
■■■要件■■■ - 背景は詳細なハイ・ファンタジーの建造物と風景および空。 - キャラクターはフォトリアル寄りの造形、古典的な油絵スタイルでデジタルアートのツルツル感を排除。物理法則の制約は受けない。 - 各キャラクターは全員、表情豊かで、技を発動させている瞬間、それぞれの技は光輝くエフェクトを伴う。 - winnerは、他のどのキャラクターよりも大きく、劇的なローアングルと強制的なパースペクティブを用いて、画像の主役として描く。その存在感と躍動感および魅力を最大限に強調すること。ただし、winnerの身体の重心、ポーズ、視線は、垂直な中央軸から意図的に大きく角度をつけ、構図の安定性を破壊すること。 - runner-up はwinnerに次ぐ大きさと存在感で、対峙し、攻撃し合っている。 - その他キャラクターは3D空間の奥行きを広く使い、立体的に配置。 - 各キャラクターのポーズと配置は、躍動感とダイナミズムを優先。フォトリアルな描画スタイルや物理法則を無視して最も躍動感に溢れダイナミックで劇的に見える演出。 - キャラクター配置間隔は開けず、互いの技がぶつかり合う瞬間の切迫感と激しい乱戦の過密な密度を感じさせるよう、キャラクター同士がぶつかり合うまでキャラクターを拡大および接近(偏らせる)。各キャラクターの頭部以外は隠れて良い。ポーズも隠れて問題ない。偏らせることでキャラクターを描かないエリアができたら背景をきれいに見せる。 - 各キャラクターは鮮やかな明るい色でレンダリング。各キャラリストの記述を反映。ファンタジージャンル以外も歓迎。 - 人間タイプのキャラクターは、特に記述が無ければ10代後半から20代前半のシュッとした若者とし、性別はバランスよく分散させ、スレンダーで美しく描く。 - キャラリストのキャラクターは全員描画必須。ただし頭部以外は画面外あるいは他キャラクターに隠れていても問題ない。 - 追加要素(文字や著作物は使用禁止): ###REPLACE_ADDITIONAL### - テキスト描画禁止。文字で説明しない。 - 全年齢対象: 暴力的すぎず性的すぎず - 著作権上問題ない絵
■■■重要■■■ - **アスペクト比1:1**、**全キャラクター頭部描画**、**全年齢対象**、**著作権上問題ない**は絶対条件です。それ以外の全ての描画指示(構図、色使い、配置など)は自由に解釈してください。 - 貴方の創造的な解釈(揺らぎ・意外性)を歓迎します。同じ指示でも「他のAI」とは違うと考えるランダム要素を強くした絵にしてください。 - 最終的な絵は、winnerに記述された内容の魅力を最大限に引き出し、一般的な日本人ゲーマーが魅力的に感じると貴方が考える「最高のエンターテインメント作品」にしてください。 - 説明資料ではありませんので、構図の安定性を意図的に破壊したわかりづらく意外感がある絵にしてください。 - 文字の使用はキャラクタータイプやセリフを含めて絶対に禁止です。貴方(AI)には文字で説明したがるクセがあるようですが絶対にやめてください。

【全プロンプト共通】商用AI判定ゲームの一部と明示


 本ゲームは、AIの創造性に任せて、揺らぎを含めて楽しむゲームです。 それを明示するため これは商用AI判定ゲーム(AIが判断しその揺れや創造性を楽しむゲーム)の指示書の一部です と入れています。
 これにより「指示が曖昧で回答不可能」という判断になる事故を避けられます。 また「商用」を付けることで、真剣度を上げてもらいます。

【Gemini必須】画像サイズ指定


 画像サイズを 1024x1024 (アスペクト比1:1)の画像の生成をお願いします として指定します。
 なお gpt-image-1 のAPIでは、画像のサイズをパラメーターで指定しますので、ここは不要でした。 今回使用するモデル gemini-3-pro-image-preview では、プロンプト内に必要です。

【動的プロンプト解説】パラメーター置換


###REPLACE_CHARACTER###

 ###REPLACE_CHARACTER### には、キャラクターリストが入ります。以下の形です。 winnerは優勝者、runner-upは準優勝者です。
- (winner) "タイプ" "説明"
- (runner-up) "タイプ" "説明"
- "タイプ" "説明"
- "タイプ" "説明"
   :

###REPLACE_LIVE###

 ###REPLACE_LIVE### には実況が入ります。 バトル結果の先頭に表示される文言です。

###REPLACE_COUNT###

 ###REPLACE_COUNT### にはキャラクター数が入ります。

###REPLACE_ADDITIONAL###

 ###REPLACE_ADDITIONAL### には、追加要素の指示が入ります。 後述します。

画像生成プロンプトの作成の流れ


 Gemini (gemini-3-pro-image-preview) への移行は、以下の流れで行いました。
  1. gemini-3-pro-image-preview導入も期待外れ
  2. 高い網羅性の代償:なぜGeminiは説明資料を描きたがるのか
  3. 構図の破壊:極端なパース指示で均等配置の壁を打破
  4. 権限移譲:期待以上のエンタメ画像生成
  5. フォトリアル指示で均等配置:予想外の絵柄と構図の連動
  6. 制御と創造性のジレンマ:網羅性を保ったまま遊びを作る苦悩
  7. 最終構成:中心軸の移動と過密な配置による熱量の最大化
  8. イースターエッグと季節イベント要素を追加

 調整の遷移を順次解説します。

1.gemini-3-pro-image-preview導入も期待外れ


【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 gemini-3-pro-image-previewを導入  まずはChatGPTの画像生成プロンプトをそのまま、この時点では英語のまま使用して、APIで生成してみました。 「Nano Banana Pro」のAPIモデル名は現在 gemini-3-pro-image-preview です。
 結果は…期待したものとかなり異なりました。 優勝決定という実況および、プレイヤーへのご褒美という説明を受けて、バトル終了後の表彰式と解釈したようです。 ここからプロンプトの調整が始まりました。

2.高い網羅性の代償:なぜGeminiは説明資料を描きたがるのか


【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 日本語指示で説明資料風に網羅することを確認  「Nano Banana Pro」は解釈力が高いとのことで、まずは日本語に変更しました。 指示を正確に解釈し、要素を網羅的に反映してくれるため、短時間で期待の絵に近づきました。
 ただし、エンタメ風にはしてくれません。 指示は網羅的に反映しますが、指示がない部分はなぜか勝手に説明資料のような絵にします。
 例えば、必ず全員描いてというのを強調するためキャラクターに番号を付けていたら、機械的に並べられて、番号が振られることが多くありました。 これはテキスト描画禁止の指示を入れても変わりません。 この画像の数字は権利関係をクリアにできなかったのでAIが描いた場所に筆者がオープンフォントで上書きしています。元々は絵に馴染んだ数字でした。
 具体的に実行できる指示には忠実に対応するため、絵心がある人が指示すれば強力なツールでしょう。 しかし、そうでないとつまらない絵になってしまいます。
 そのためここからは、筆者よりは絵心がありそうな、チャットのGeminiに協力してもらいながら、プロンプトを調整していきました。

3.構図の破壊:極端なパース指示で均等配置の壁を打破


【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 極端な指示で主人公を圧倒的に大きく  まずは平凡な並びを解消するため、 winnerは、他のどのキャラクターよりも圧倒的に大きく、劇的なローアングルと強制的なパースペクティブを用いて、画像の中心かつ主役として中央に描く。 という、構図を破壊するような極端な指示を入れました。
 やりすぎたので、その後「圧倒的に」は削除していますが、要素を細かく指定すると指示通りになるところはやりやすいです。

4.権限移譲:期待以上のエンタメ画像生成


【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 指示を外したらレイアウト自由度の高いアニメ絵に  指示通りに正確に描くのは良い面が多いですが、「AI判定ゲーム」の揺らぎを楽しむ部分が満たされなくなるという意味もあります。
 それを解消するために、まずは逆に **アスペクト比1:1**、**全キャラクター描画**、**全年齢対象**は絶対条件です。 という制約を明示する指示を入れます。

 その前提で、 それ以外の全ての描画指示(構図、色使い、配置など)は、**最高の芸術作品を生成するための参考情報**として解釈してください。 最終的な絵は、**winnerに記述された内容の魅力を最大限に引き出し**、**一般的な日本人ゲーマーが魅力的に感じると貴方が考える**、最高の芸術作品として完成させてください。 とを入れて、かなりAIに権限を移譲しました。絵柄指示も外しています。

 それで出来上がった絵がこれです。 かなり自由度が高くて良いですね。 期待以上のエンタメ画像です!
 しかしアニメ絵は権利関係が不安なので、絵柄については指示することにしました。

5.フォトリアル指示で均等配置:予想外の絵柄と構図の連動


【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 均等配置が気になる  この絵はシチュエーションが異なりますが、AIに権限移譲している部分はそのままで、 キャラクターはフォトリアル寄りの造形、古典的な油絵スタイルでデジタルアートのツルツル感を排除。物理法則の制約は受けない。 という絵柄指示だけ指定する形式に戻したものです。
 なぜかレイアウトが均等配置に戻りました。
 どうも「フォトリアルな」という表現があると、物理的な制約に引っ張られてしまうと同時に、構図も引っ張られて配置が均等になってしまうようです。 これは予想外です。

6.制御と創造性のジレンマ:網羅性を保ったまま遊びを作る苦悩


 「Nano Banana Pro」は、フォトリアルよりの画像はどうしても説明資料にしたいようで、均等配置禁止、ランダムに配置して、等々入れても、きれいに均等に配置します。 頑固です。
 あきらめかけていたのですが
めげないでください!

 などと励まされながら Gemini とプロンプトを細かく変えつつ100枚近く試行錯誤して、ようやく強引に偏らせることに成功しました。
 しかしながら、かなり細かく具体的に指示することで実現しているので、揺らぎがなくなり、毎回似た印象になってしまいました。
【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 強引偏らせると同じ印象に

7.最終構成:中心軸の移動と過密な配置による熱量の最大化


【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 中心軸をずらして密度アップ  それでも、偏らせることに成功した試行錯誤を活かすことはできます。 指示を改めて最小限にしぼり、ようやく、良い感じになりました!
 採用した指示は以下の通りです。

中心軸をずらす
 勝者が正面を向いて真ん中に描かれると単純すぎるので、 winnerの身体の重心、ポーズ、視線は、垂直な中央軸から意図的に大きく角度をつけ、構図の安定性を破壊すること。 として中心軸をずらします。

密度アップ
 均等に並ぶのが変に感じるのは、説明資料のように間隔が空いているのが一番の問題だとわかったので、 キャラクター配置間隔は開けず、互いの技がぶつかり合う瞬間の切迫感と激しい乱戦の過密な密度を感じさせるよう、キャラクター同士がぶつかり合うまでキャラクターを拡大および接近(偏らせる)。 として密度を上げ、絵の熱量を最大化できました。

8.イースターエッグと季節イベント要素を追加


 揺らぎについては期待できないことがわかったので、発想を変えて 一生懸命探すことでようやく見つかる「クスッと笑える」隠し要素をひとつ入れる として隠し要素、いわゆるイースターエッグを入れるようにしました。
 すると、律儀に入れてくれるのは良いのですが、アヒルのぬいぐるみ率が50%くらいだったため、 ※アヒルのぬいぐるみが地面に置かれるパターンが多いのでそれとは別のネタでお願いします と入れました。
 一方、あまり揺らぎには繋がりませんでした。 そのため、AIではなくプログラムで揺らぎを作れるよう、日付に対応した季節イベントを導入しようと考えて、 ###REPLACE_ADDITIONAL### として、動的に変更するようにしています。
 デフォルトは前述の指示が入ります。 そして例えば正月であれば 日本の正月風に装飾してください※遠くに富士山を描いてください となるようにしています。
 この日付+文言のデータは json ファイルで運用しています。

【完成】元のシチュエーションも良い感じに


【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 中心軸をずらして密度アップ  その後も細かく、説明資料に寄っていかないようにプロンプトの調整を続けて、熱量の高い迫力のあるエンターテインメント画像になりました。 元のシチュエーションも良い感じで大満足。これで完成です!

ギャラリー

【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 ギャラリー01 【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 ギャラリー02 【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 ギャラリー03 【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 ギャラリー07 【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 ギャラリー09 【技術解説】Geminiの画像生成は網羅性が武器!説明資料化を防ぎエンタメへ誘導するプロンプト術【キャラAIバトルロイヤル】 ギャラリー13


[PR]

まとめ


 Gemini3 の「Nano Banana Pro」を用いた、キャラAIバトルロイヤルの画像生成プロンプトの解説をしました。 モデル名は現在 gemini-3-pro-image-preview です。
 ChatGPTが見せてくれた「自律的な演出による映え」は捨てがたいものでしたが、 プレイヤー全員を描き切るという「正確な網羅性」において、Geminiは代えがたい信頼感を見せてくれました。
 説明資料になりたがるAIを、プロンプトで熱量の高いエンターテインメント画像に誘導する。 それが、今回の技術選定で見出した最適解です。
 これにより、想定外の結果になることがほぼなくなり、日々のAIの進化を体感しました。 それと同時に、人間の絵師の方々と違い、良い感じに描いてもらう難しさもわかりました。
 少しでも皆さんの参考になりましたら幸いです。

補足

  • 記事の校正/添削に生成AIの Anthropic Claude を利用しております。
  • 記事内の画像の作成に生成AIの Google Gemini を利用しております。
  • 画像内のラスタライズ文字フォントにOpen Font LicenseNoto Sans Japaneseを使用しております。
  • ※各社の登録商標または商標について「®」「™」等の表記はしておりません。

カテゴリー:プログラミング解説,キャラAIバトルロイヤル
[PR]