【生成AI】AIの絵を使ってRPGツクールでゲーム作る その2 習作完成版&まとめメモ【ツクール】
前回の続き。
4日目&完成
完成しました。
ストーリーの流れはこんな感じ。
1.酒場でクエストを受ける。(立ち絵表示で会話)
2.森へ行く。(立ち絵を表示した状態で移動)
3.森の奥のボスを倒す。(戦闘時、被弾で立ち絵を変える)
動画にするとこんな感じ。(音無し、1.5倍速、自主規制有ダイジェスト版)
前回とはちょっと立ち絵を変えました。やりたいことはできたと思われる。
フルでプレイしても5分程度。試行錯誤含めて作業日数は4日。
もちろん、RPGツクール(特にMV以降)の経験と、生成AIの練度とパソコンの性能で日数は前後する。
生成AI+画像編集技術(透過やサイズの知識、その他色々微調整の細かいテク)があればあるほど早いかも。
で。
作り方の流れと、作っている最中に思った生成AI&ツクールの組み合わせについてを書いてみた。
作り方の流れ
作業は大きく分けて生成AIを使った素材作成作業とRPGツクール作業に分かれる。
まずは生成AIを使った素材作成作業について。
前回の記事でも書いたけど、キャラの透過PNGを用意する。
ABG RemoverとRembgがあると便利だけど、なくてもいける。
(インストールは前回の記事参照)
LoRAを使う場合は、LoRAの用意も別途する。
立ち絵に使ったプロンプトはこんな感じ。
ポジティブプロンプト:
(masterpiece:1.4),<lora:lora:1>, 1girl, (trigger_tag),pale blond hair, holding black huge sword with wide blade,
full body, simple back ground, standing, front view, looking at viewネガティブプロンプト:
(low quality, worst quality:1.4), bad anatomy, malformed hands, water mark, text, logo, bad hands,
crowd, clone, three view drawing, back view, 2girls
各1行目は人によってテンプレがあると思うので置いておいて、重要なのは2行目。
これで立ち絵っぽい感じになる。人によってはstandingが手を腰に当てた立ち姿だったり、腕組みだったりすると思われる。
解像度は512×1024を1.5倍した上で、500×1000に縮小&切り詰めて使用。
この倍率だとRPGツクールにそのまま使える感じだった。(一部足が隠れたりはする)
ただ、解像度が低くなるとやっぱり画像が目に見えて粗くなるので、生成AIとの相性は悪そう。
高解像度で出力してRPGツクール側で縮小表示したほうが良さそうではあるので、次回はそれで試してみたい。
で、いくつかこのプロンプトで出力し、良さげなのをチョイスしてimg2imgで表情を変更。
前回の画像だけど、こんな感じで表情をInpaintで顔だけ指定して再生成する。
InpaintはCTRL+マウスホイールでブラシサイズ変更、ALT+マウスホイールで画像の拡大・縮小ができる。
とはいえ、どうしても境目がおかしくはなるので、Mask Blurの値(境目を自然に処理する幅の値)をいじりつつ、画像編集ソフトで修正が必要。
いっそ、txt2imgでポーズを微変更しつつ表情変えたほうが良いかもしれない。
画像編集ソフトはGIMPを使用。フォトショとかある人は私より知識も経験も豊富だと思うので言わずもがな。
笑顔
happy, ^o^
真剣
serious
困り顔
furrowed brow
恥ずかしがる顔
(embarrassed,blush:1.1)facial
closed eyeやopen mouth(閉じ目、口開き)あたりも適宜使って表情を操作。
それぞれ立ち絵+表情差分で5つほど立ち絵を作っておけば、普通の会話シーン作る分には困らないと思われる。
表情の種類や細部の指定なんかは検索すればいっぱいあるので省略。
差分自体は後から追加できるので、ベースだけ用意して2~3個差分の作り方覚えたらもう次にGOしても良いかな。
この時に設定した各種項目の値とかは保存しておきましょう。
Config-Presets辺りが使いやすい。詳しくは検索してください(丸投げ)
次は衣装差分。(ダメージ差分)
今回は戦闘破損なので、破れている感じの差分を作った。
こちらは大きくポーズが変わるので、txt2imgでたくさん出力してイメージに合うものをチョイス。
プロンプトはこんな感じ。
ポジティブプロンプト:
(masterpiece:1.4),<lora:lora:1>, 1girl, (trigger_tag), pale blond hair,
full body, simple back ground, front view, looking at view, (embarrassed,blush:1.1)facial, standing,
torn thighhighs with ripped sections from knee to shin, torn black panties with ripped hem, covering crotch, covering breast, wince
tornで破れた状態、with~でどんな感じの破れ方か、sections from~でどこからどこまで破損しているか、という感じ。
日本語に直すと、
torn thighhighs with ripped sections from knee to shin
ニーハイがひざからスネまで引き裂かれた状態で破れている。
covering crotch, covering breast
股間を隠す、胸を隠す。
wince
これは苦痛や困惑で顔が歪んでいる、という表情指定。大体片目が閉じられる。赤面指定とセットで合わせると衣服破損系ダメージに対する表情な感じになる。
破れ指定はあんまり言うことを聞いてくれないので、試行回数を増やすしかないかもしれない。
もっと他に良いタグはあるのかも。
出力するとこんな感じ。(黒塗り自主規制してます)
これらを欲しい分だけ×キャラ数用意すれば多分素材はなんとかなる…はず。
素材を用意できたら、RPGツクールMZのimg/picturesフォルダにINする。
一つ注意点としては、RPGツクールの本体のところではなく、RPGツクールのプロジェクトフォルダに入れる。
(例えばSteamのライブラリからローカルフォルダ開いても別の場所になっちゃう)
プロジェクトフォルダはMZ起動して新規プロジェクト作成で勝手に作られる。
今回はDドライブ直下に作ってたので、フォルダの場所はこんなかんじ。
D:\RPGMakerMZ\テストプロジェクト\img\pictures
こんな感じに並べればOK。
ここまで出来たら次はRPGツクールMZ側の作業になる。
基本はまあ省略して、立ち絵出力部分だけ。
マップを適当に作り、イベント配置モードでイベント作成。
イベントの種類でピクチャを表示というのがあるので、そこでピクチャを設定する。
画像を設定した後、簡易設定というのを押すと画面サイズに合わせてプレビュー表示されるので、
マウスで画像をつかんでいいところにドラッグして移動させる。
この時、左上に表示されてる座標が指定した座標になるので、今後はこの座標を入力すれば
良い感じのところに画像が来る、という寸法。
この一連を設定するとイベント一覧にピクチャの表示のイベントが追加されるので、
これを画像(差分)ごとに色々用意して会話に合わせて良い感じに配置すると会話イベントが作れる。
…というのが、プラグインを使わずにシンプルに標準機能だけで作る方法。
これが基本のキになるので、ピクチャ表示はこういう仕様の元動いている、
という理解のために一度やってみても良いかもしれない。画像サイズが合ってるかどうかもわかりやすいし。
で。
今回は立ち絵表示管理プラグインを使用したのでそちらの使い方も軽く紹介。
立ち絵表示管理プラグイン
https://x.com/triacontane/status/1360841352884285442
こちらのプラグインを導入する。
ツイッターXのリンクから飛ぶとプラグインリストが載っているスプレッドシード(Excelみたいなやつ)に飛ぶので、
その中から立ち絵表示管理プラグインの文字を探して、右側のURLを右クリックして「名前を付けてリンク先を保存」、
またはリンク先のページにある文字を全コピーしてメモ帳辺りを開いてペースト、「CharacterPictureManager.js」というファイル名で保存する。
保存先はプロジェクトフォルダのjs\pluginsの中。
今回は以下のフォルダに入れた。
D:\RPGMakerMZ\テストプロジェクト\js\plugins
また、このプラグインは前提となるベースプラグインも必要なので、それもコピーして持ってくる。
ファイル名は「PluginCommonBase.js」
こちらは公式の無料DLCプラグインに入っている。
基本はMZを購入したら勝手についてくるので、RPGツクール本体フォルダ下に以下の場所にあるはず。
RPG Maker MZ\dlc\BasicResources\plugins\official\PluginCommonBase.js
Steamで購入&Dドライブにインストールすると、以下な感じで格納されてる。
D:\SteamLibrary\steamapps\common\RPG Maker MZ\dlc\BasicResources\plugins\official\PluginCommonBase.js
これをコピーして、さっきのプロジェクトフォルダのjs\pluginsの中に入れればOK。
上手く配置できれば、ツクールMZのツール→プラグイン管理でプラグインリストを開き、
空欄をダブルクリック→開いたウィンドウで名前のとこの空欄をダブルクリックで、
DLしてきたプラグインが表示されるのでそれらをぱぱーっと追加する。
優先順位は上からなので、PluginCommonBaseは一番上にする。
追加後もドラッグしながらで移動できるので、なんか怒られたりうまく動作しなかったら適宜入れ替え。
次に、CharacterPictureManagerを設定する。PluginCommonBaseは設定する必要無し。
開くとなんか色々設定項目があるので、それっぽく設定する。
一つの項目だけでも4窓ぐらい開けたりするので説明するのは面倒難しい。
幸い、作者さんが日本人なので、説明は日本語で丁寧に書かれている。
HPの残り具合やステートの有無、シーン別の表示非表示、スイッチのON/OFFなどなど。
設定項目がいっぱいあるので、好みの具合に設定する。
上手く表示されない場合は座標の原点をいじると良いかも。
今回の設定は、会話シーンはピクチャ表示(標準機能)で行い、
戦闘シーン、マップ移動時の立ち絵表示をプラグインで行った。
戦闘・マップ時では、HPの割合によって立ち絵を表示変更。
また、戦闘時のHPMAX立ち絵と、マップ時のHPMAX立ち絵を別に設定。
それぞれのHPMAX立ち絵の表示条件に戦闘シーン・マップシーンを指定している。
…という感じ。
あとはタッチUIが邪魔だったので、非表示にするプラグインを追加。
タッチUI用ボタンと領域を非表示プラグイン
https://newrpg.seesaa.net/article/502758965.html
こちらもDLしたら同じjs\pluginsに配置して、MZ内で有効化する。
次に、マップ上の立ち絵表示/非表示設定をコモンイベントで設定。(動画の15秒~22秒辺りのやつ)
データベースのコモンイベントで、スイッチON/OFFを操作する条件付きテキストイベントを作成。
立ち絵を表示するタイミング(動画だと戦闘可能エリアにはいって行動可能になる時)でコモンイベントを呼んでプレイヤーに設定させる。
合わせて、スイッチをONにした場合にMAPの立ち絵を表示する、
という設定をCharacterPictureManager側でやっておく。
立ち絵表示/非表示設定はプレイヤーが後から任意に操作できるよう、アイテムとしても実装。
大事なものアイテムの使用効果にさきほどのコモンイベントを設定して、何度でも使えるようにしておく。
ちなみに「範囲なし」にしておくと、対象指定する必要がないので選択した瞬間コモンイベントが呼ばれる。
ここら辺は個人で作ってるツクール系ゲームでよく見るやつ。
あとはイベント作って、マップ作って、モンスター作って、
アクター設定して、ドット絵打って、職業設定して、武器防具アイテム設定して、
なんやかんやして完成!
そのなんやかんやが初心者には難しいんだけど、こればっかりは作って慣れるしかない。
こんなこと書いている人もツクール自体は初心者の域を出ていないので、精進あるのみ。
あとは蛇足の雑記。
生成AI&ツクールの組み合わせについて
生成AIはぱっと見かなり綺麗に出てくるんだけど、
やっぱり細部で雑だったり違和感だったりがあるのでツクールに落とし込む際、そこの修正に割と時間がかかる。
例えば目の虹彩、白目のグラデーション、まつげと一重、まゆげの境界線の描き分け。
例えば指先の描写、服の結び目などの細部、パターン柄の一貫した連続性など。
別にこれらをもってして「やっぱり生成AIは駄目だよね」とけなしたりすることは全然しないんだけど、
「立ち絵」という何度も見ることになる絵に対して求められる「一貫性・整合性・完成度」は一発ボンで出力した画像の品質で達成するのは難しい。
相性が悪いと言い換えてもいいかも。
これはモデルやチェックポイント、今後の技術向上である程度は改善できると思うけど、やっぱり生成AI技術の根本的な弱点でもあるとは思う。
指が6本問題も生成AIが話題になった当初から指摘されてるけど、いまだに結構出るし。
まあ無視してそのまま使っても問題無いし、気にしないという選択肢もあるとは思うけど、
それでも何枚かに1枚は腕や足が3本になったり胸が尻になったりするから、細かいところは無視できても、
全部が全部、無視するわけにもいかないのがやっぱり難点だとは思うわけですよ。
その都度プロンプト調整しないといけないし、
効くタグと効かないタグがあるからイメージ通りのものを出せるかと言われたら難しい場合もあるし。
とはいえ、これだけの品質の画像を1分そこらでポンと出せるのはやっぱりすごくて、
ゲームを作る体験を楽しむというRPGツクール本来の楽しみ方をするならこれ以上ないくらいモチベーションが上がるツールであることは間違いない。
理想の女の子を主人公(ヒロイン)に出来てそれでゲームが作れるんだ、今すぐ環境整えてRPGツクールMZを買おう!
長期休暇の暇つぶしはこれで決まり!
https://store.steampowered.com/app/1096900/RPGMZ/
売れるか(儲かるか)どうか、というのは書いている人があまり興味ないので他の人にお任せします。
気が向いたら続編を作ります。











