生成の指示を記録する:同じ絵をもう一度作れるか
遊びをつくる執筆にClaudeを使用しています。

ゲームのタイトル背景を、画像生成で作った場面を考えてみます。夜の海辺に小さな灯台が立つ、気に入った一枚が手元にあります。数週間後、続編のために「同じ雰囲気の別カット」が必要になりました。ところが、指示文はチャット欄に流れてしまい、どのモデルを使ったかも、サイズをいくつにしたかも思い出せません。似た言葉を打ち直しても、出てくるのは別の絵です。 この記事で確かめるのは、自分で記録した項目だけを頼りに、どこまで同じ絵に近づけるかという問いです。結果は使うツールによって変わるため、ここでは書きません。代わりに、記録の項目、再現の手順、結果の読み方、起こりやすい誤りを、読者が自分で実験できる形で示します。
この実験で確かめる問い
先に「同じ」の意味を決めます。ここが曖昧だと、どんな結果でも「だいたい同じ」と言えてしまうためです。次の3段階で考えます。
- 段階1:ほぼ完全一致。 同じ画素サイズの2枚を重ねて差分を取ったとき、ほとんど差が見えない状態です。
- 段階2:構図と要素の一致。 灯台の位置、水平線の高さ、月の有無など、初回の画像から書き出した要素がそろっている状態です。
- 段階3:雰囲気の一致。 細部は違っても、並べると同じシリーズに見える状態です。
問いは三つに分けます。
- 同じ記録で何度か生成したとき、ツール自身のブレ幅はどの段階に収まるか。
- 記録を見て時間をおいて再現すると、どの段階まで届くか。
- 記録から一項目を抜くと、どの項目で大きく崩れるか。
3番目が分かると、記録のうち「絶対に残す項目」と「あれば便利な項目」を分けられます。
準備するもの
道具と題材
用意するのは次のものです。
- 普段使っている画像生成ツールを一つ(途中で替えません)
- 保存用のフォルダ一つ(生成した画像と記録ファイルを同じ場所に置きます)
- 小さな題材一つ(タイトル背景、キャラクターの立ち絵など、要素の少ないもの)
- 手元で画像を並べて見られる環境(ブラウザで十分です)
題材は欲張らず、要素を5〜8個で言い切れるものにします。要素が多いほど、どこで崩れたかが見えなくなります。
記録する項目
生成の直後に、次の項目を記録します。ツールによって存在しない項目もあるため、その場合は「なし」または「画面に表示されない」と書きます。空欄にすると、後で書き忘れと区別がつきません。
- ツール名とモデル名、残す理由:モデルが違えば同じ指示でも別の絵になるためです
- 生成日、残す理由:更新や提供終了があったとき、どの時期の版か分かるためです
- 指示文の全文、残す理由:一語の違いが結果を変えうるため、要約せず貼り付けます
- 除外指示、残す理由:出したくない要素の指定も絵を左右するためです
- seed(乱数の種)、残す理由:指定できるツールでは、再現性を左右する値です
- サイズと比率、残す理由:構図が変わるため、画素数まで書きます
- スタイルなどの設定値、残す理由:画面上のつまみやプリセットも条件になるためです
- 参照画像、残す理由:使ったかどうかと、そのファイル名を残します
- 後加工、残す理由:トリミングや色調整など、手作業の内容を書きます
- 出力ファイル名、残す理由:記録と画像を結びつけるためです
seedは、指定できるツールもあれば、内部で決まって表示されないツールもあります。ここは使うツールの案内で確認します。
記録はJSONなど機械で読める形にしておくと、後から並べて見比べやすくなります。次は最小の雛形です。
{
"id": "title-bg-001",
"date": "2026-10-22",
"tool": "ツール名",
"model": "モデル名と表示されたバージョン",
"prompt": "指示文の全文",
"negative": "除外指示(なければ空)",
"seed": null,
"size": "1024x1024",
"settings": { "style": "", "other": "" },
"reference": "参照画像のファイル名(なければ空)",
"postprocess": "トリミング、色調整など手作業の内容",
"output": "title-bg-001.png"
}seed が null のときは、「指定できなかった」のか「記録し忘れた」のかを other に書き分けます。
要素チェックリスト
初回の画像を見て、含まれる要素を5〜8個、先に文章で書き出します。たとえば次のようにします。
- 画面右寄りに灯台が一つある
- 水平線は画面の下から3分の1あたり
- 空は暗い青で、月は見えない
- 手前に岩場がある
この一覧が、段階2の採点基準になります。再現画像を見てから基準を作ると、都合のよい基準になるので、必ず先に作ります。
手順
1. 初回の生成と保存
題材の指示文を作り、記録をつけながら生成します。気に入った画像を一枚選び、その一枚の記録を確定させます。選ばなかった候補の枚数も other に書いておくと、後で「何枚目で出たか」が分かります。
2. 同じ記録での連続生成(条件A)
確定した記録をそのまま入力し、続けて3回以上生成します。これは「記録が完全でも、ツールが毎回違う絵を出すか」を測る条件で、ツール自身のブレ幅の目安になります。seedが固定できるなら固定し、固定できないならその旨を記録します。
3. 時間をおいた再現(条件B)
数日から1週間ほどあけます。その間は元の画面やチャット履歴を見ません。記録ファイルだけを開き、書かれた通りに入力して3回以上生成します。可能なら、別の人に記録だけを渡して作ってもらうと、書いた本人にしか通じない省略が見つかります。
4. 項目を一つ抜く(条件C)
記録から一項目だけを抜いて生成します。抜く候補は、除外指示、seed、スタイル設定、サイズ、モデル指定などです。抜く項目は一回につき一つにします。二つ同時に抜くと、どちらが原因か分からなくなります。各条件で3回以上生成します。
5. 記録と比較
画像はすべて同じ画素サイズの形式で保存し、ファイル名に条件名と通し番号を入れます(例:B-2.png)。比較は次の二つの方法で行います。
- 要素チェックリストで、各画像に何個の要素があるかを数える。
- 画像を2枚重ねて差分を見る。
差分を見る小さなページは、次のHTMLをファイルにして開くだけで動きます。外部通信はなく、画像はブラウザ内で表示されるだけです。
<!doctype html>
<meta charset="utf-8">
<title>画像の重ね比較</title>
<input type="file" id="a" accept="image/*">
<input type="file" id="b" accept="image/*">
<label><input type="checkbox" id="d"> 差分表示</label>
<div style="position:relative;display:inline-block;margin-top:8px">
<img id="ia" style="display:block;max-width:480px">
<img id="ib" style="position:absolute;left:0;top:0;max-width:480px">
</div>
<script>
const $ = id => document.getElementById(id);
function load(input, img) {
input.onchange = () => {
const f = input.files[0];
if (f) img.src = URL.createObjectURL(f);
};
}
load($('a'), $('ia'));
load($('b'), $('ib'));
$('d').onchange = e => {
$('ib').style.mixBlendMode = e.target.checked ? 'difference' : 'normal';
};
</script>差分表示では、同じ部分が黒く、違う部分が明るく見えます。同じ画素サイズの画像どうしで使います。サイズが違うと全体がずれて、比較になりません。
結果の読み方
条件A、B、Cの結果を、次の表の考え方で読みます。
- A同士が毎回大きく違う、読み取れること:記録が完全でも、ツール側のブレが大きい可能性があります、次の判断:目標を段階1から段階2、3へ下げ、気に入った画像そのものを素材として保管します
- A同士が近く、Bも近い、読み取れること:記録が効いています、次の判断:現在の項目を、そのまま記録の標準にします
- A同士は近いが、Bだけ離れる、読み取れること:記録に書かれていない条件が効いています、次の判断:書き忘れた設定、後加工、モデルの更新を疑います
- Cで特定の項目を抜くと崩れる、読み取れること:その項目は必須です、次の判断:記録の先頭に置き、必須と明記します
- Cで抜いても変化が見えない、読み取れること:その項目は影響が小さい可能性があります、次の判断:3回では偶然もあるため、回数を増やして確かめます
判断では、段階ごとに別々に採点します。たとえば「段階2の要素は8個中何個」「段階3は並べて同じシリーズに見えるか」を、条件ごとに表にします。段階3は主観が入るため、題材を知らない人に、初回画像と再現画像を混ぜて見せ、同じ組に見えるものを選んでもらうと偏りを減らせます。
もう一つ見るべき点があります。ツールのモデルが更新されたり、提供が終わったりすると、記録が完全でも同じ絵は作れなくなりえます。条件Bの結果がよくても安心せず、気に入った画像そのものは必ず元のファイルで保管してください。記録は「再現の保証」というより、「近づくための地図」です。
誤りやすい点
- 記録を後からきれいに書き直す。 実際に打った文でなく、整えた文を記録すると、再現の根拠が失われます。貼り付けで残します。
- 手作業の後加工を書かない。 切り抜きや色調整を忘れると、条件Bで原因が分かりません。
- 画像のメタデータに頼る。 形式変換や書き出しの際に、埋め込み情報が消える場合があります。記録は画像とは別のファイルで持ちます。
- 採点基準を後から決める。 結果を見てから「この程度なら同じ」と決めると、都合のよい判定になります。
- 1回で判断する。 生成はばらつきます。各条件3回以上は最低限です。
- 機密や個人情報を指示文に入れる。 記録は残る前提のものです。後述のように、素材と一緒に外へ出る可能性もあるため、公開して困る語は入れません。
- 利用条件の確認を省く。 生成物の商用利用や公開の可否は、ツールごとの規約で決まります。断定せず、使うツールの公式の案内で確認してください。
次の行動
まず、手元にある生成画像を一枚選び、この記事の雛形で記録を一つ書いてみてください。書けない項目がいくつあるかを数えるだけでも、普段の記録の抜けが見えます。次に、同じ記録で3回生成して、段階1から3のどこに収まるかを確かめてみてください。
アソバースへゲームを投稿するときは、画像素材をHTMLと同じZIPに入れ、相対パスで読み込む形になります(ZIPは20MiB以内などの上限があります)。記録ファイルを同じZIPに入れるかは任意です。入れる場合は、公開してよい内容だけを書いたものにしてください。公開範囲の細部は、投稿画面の案内で確認するのが確実です。
