マガジン

Stable Diffusionでドット絵を生成する:モデルと設定

遊びをつくる

執筆にClaudeを使用しています。

正方形のタイルで芽のキャラクターを組み、拡大鏡で輪郭を確かめる写真風イメージ。
記事のテーマをもとに制作したAI生成イラスト。

Stable Diffusionでドット絵を生成しようとすると、「なんとなくドット絵っぽい」だけで終わり、実際にゲームで使えるクオリティにならないという壁にぶつかりがちです。原因はモデル選びと設定の両方にあります。汎用モデルにプロンプトだけで「ドット絵にして」と指示しても、拡大すると滲んだピクセルが並ぶだけで、キャラクターのシルエットも崩れやすくなります。 この記事では、ドット絵生成に向いているモデルの種類と、実際に使えるクオリティに近づけるための設定の考え方を順に説明します。「モデルを何にすればいいかわからない」「生成してもドットが揃わない」という段階の方を想定しています。

この記事の目次
  1. ドット絵生成に向いているモデルの種類
  2. プロンプトの書き方:「ドット数」を意識する
  3. 解像度とサンプリング設定の選び方
  4. 生成後の仕上げ:ポストプロセスで完成度を上げる
  5. 失敗しやすいパターンと対処法
  6. 次の行動
  7. 参考資料

ドット絵生成に向いているモデルの種類

Stable Diffusionのモデルは大きく「ベースモデル」と「LoRA(追加学習モデル)」に分かれます。ドット絵を狙うときはこの二つの組み合わせ方が鍵です。

汎用モデル単体は避ける理由があります。SD1.5やSDXLの汎用モデルはドット絵データを十分に学習していないため、プロンプトにpixel artと書いても「絵画風の粗いテクスチャ」になりやすいです。特にSDXLは高解像度・高品質方向に最適化されているため、低解像度のドット感を出すのが難しくなっています。

ドット絵特化のファインチューンモデルは、Civitaiなどのモデル配布プラットフォームで「pixel art」タグを絞り込んで探せます。代表的なカテゴリは次の三つです。

  • SD1.5ベースのドット絵特化モデル:古典的なRPGやアクションゲーム風のドット絵が得意。解像度が低いぶん軽く動き、キャラクターの輪郭が比較的安定しやすい。
  • LoRAをSD1.5汎用モデルに重ねる構成:特定のドット数(16×16、32×32など)や特定のゲームスタイル(ファミコン風、スーパーファミコン風)に絞ったLoRAが多数配布されている。ベースモデルの安定性を保ちつつスタイルだけ制御できる。
  • Pony DiffusionやイラストLoRAとの組み合わせ:アニメ調ドット絵が目的なら選択肢に入るが、出力がドット絵から離れやすいので後述のネガティブプロンプトとCFGスケールで補正が必要になる。

まずはSD1.5ベースのドット絵特化モデルか、SD1.5汎用モデル+ドット絵LoRAの組み合わせから始めるのが確実です。

プロンプトの書き方:「ドット数」を意識する

モデルが決まったら、プロンプトでスタイルをより具体的に指定します。pixel artだけでは解釈の幅が広く、出力がぶれます。

効果的なプロンプトのキーワード例

  • 16x16 pixel art、32x32 pixel art:解像度を数字で指定する。モデルが学習済みであれば、より規則正しいグリッドに近づく。
  • limited color palette、4 colors:色数を絞るとドット絵らしさが増す。多色のグラデーションはドット絵の敵です。
  • retro game sprite、8-bit style、16-bit style:世代感を言語で伝える。
  • flat shading、hard edges:グラデーションやぼかしを排除するキーワード。

ネガティブプロンプトに入れるべき要素があります。blurry、soft、smooth shading、gradient、anti-aliasing、realistic、photographicはドット絵の天敵です。これらをネガティブプロンプトに列挙することで、滲みや半端なグラデーションを抑制できます。

解像度とサンプリング設定の選び方

生成解像度をドット数に合わせるのが基本的な考え方です。たとえば32×32ピクセルのスプライトが最終目標なら、512×512で生成してから画像編集ソフトでニアレストネイバー補間(ドットを補完しない拡大)で縮小するアプローチが有効です。最初から32×32で生成しようとすると、Stable Diffusionの出力品質が落ちるケースが多いです。

推奨されるサンプリングステップ数とCFGスケールについて、一般的に言われている範囲をまとめます。

  • サンプリングステップ、汎用設定の目安:20〜30、ドット絵での傾向:20前後で十分なことが多い
  • CFGスケール、汎用設定の目安:7〜9、ドット絵での傾向:高め(10〜14)にするとプロンプト通りの硬さが出やすい
  • サンプラー、汎用設定の目安:Euler a、DPM++ 2M、ドット絵での傾向:Euler aはドット感が出やすいとされる

CFGスケールを上げるとプロンプトへの追従が強くなり、色数制限や硬いエッジが強調されます。ただし上げすぎると破綻するため、12〜14あたりを上限の目安にして調整するのが実際的です。

LoRAの強度(weight)は0.6〜0.8から始めるのが無難です。1.0にすると強制力が強すぎてアーティファクト(意図しないノイズや乱れ)が出やすく、0.4以下では効果が薄れます。

生成後の仕上げ:ポストプロセスで完成度を上げる

Stable Diffusionの出力をそのままゲームに使えることは少なく、生成後の処理が品質を大きく左右します。

ニアレストネイバー補間での縮小・拡大が最初の作業です。PhotoshopやGIMP、Aseprite(ドット絵専用エディタ)はこの補間モードを持っています。512×512で生成したものを64×64に縮小するとき、バイリニアやバイキュービックを使うと滲むので、必ずニアレストネイバーを指定します。

インデックスカラー化(減色処理)を行うと、不規則なグラデーションが整理されてドット絵らしさが増します。GIMPでは「画像→モード→インデックス」で色数を指定できます。8色・16色など目標の色数に減色してから確認すると、使えるかどうかの判断が早くなります。

Aseprite上での手修正が最後の工程です。AIが出力したドット絵はアウトラインが途切れていたり、1ピクセルの孤立したドットが浮いていたりすることがあります。こうした「外れドット」は実際のゲーム表示でノイズに見えるため、10〜15分の手直しを前提に工程を組んでおくと現実的です。

失敗しやすいパターンと対処法

「ドット絵に見えるが拡大すると滲んでいる」:これは生成解像度が高すぎてアンチエイリアスがかかっている状態です。前述のニアレストネイバー縮小で解消できますが、根本的にはCFGスケールを上げてネガティブプロンプトにanti-aliasingを追加することで生成段階から抑制します。

「色数は少ないが陰影がグラデーションになっている」:LoRAの強度を上げるか、ネガティブプロンプトにsoft shading、gradient shadingを追加します。あわせてプロンプトにcel shading、2-tone shadingを入れると硬い影になりやすいです。

「キャラクターのシルエットが崩れる」:SD1.5ベースのモデルは512×512付近でシルエットが安定しやすく、768×768以上に上げると崩れやすくなることがあります。まず512×512で生成し、必要なら後で拡大する手順に変えると安定します。

「毎回スタイルがぶれる」:シードを固定して設定変更の影響だけを確認するデバッグ手順が有効です。モデル、LoRA、プロンプト、CFGスケールを一度に変えると何が効いているか分からなくなるため、一変数ずつ変えて確認します。

次の行動

使っているモデルとLoRAの組み合わせ、CFGスケール、ネガティブプロンプトをセットにして「ドット絵用プリセット」として保存しておくと、次回から設定を探し直す手間がなくなります。生成したスプライトがある程度整ったら、HTMLファイルやZIPにまとめてアソバースに投稿し、実際のブラウザ環境での見え方を確認してみてください。

参考資料

  • Stable Diffusion Web UI(AUTOMATIC1111)公式ドキュメント
  • Civitai モデル・LoRA配布ページ(pixel artタグ)
  • Aseprite 公式ドキュメント
  • GIMP 公式ドキュメント(インデックスカラーモード)