シーンレシピ

シーンを説明する。マップを読み込む。

レシピは高レベルの操作を並べた短いJSONファイルです。アプリはそれをグリッドに正確なジオメトリに展開します。床は敷き詰められ、壁は角で出会い、開口部は辺の上に載ります。スターターシーンもこの方法で作られており、AIアシスタントが一文から書ける程度に小さな形式です。

Castle Gate at Dusk:城壁、門楼、中庭
Castle Gate at Duskはレシピです。

仕組み

  1. 頼む「夕暮れの松林、街道脇の祠。道端でローグが待っている。」
  2. アシスタントがレシピを書く同梱のガイドを使って:レシピのスキーマ、QAチェックリスト付きの制作ガイド、全IDと占有面積を載せたアセットカタログ。
  3. 読み込むファイル ▸ シーンJSONを読み込む。モデルはライブラリからダウンロードされ、ビルダーが警告があれば報告します。
  4. 飾って遊ぶあとは普通のシーンです。塗り、動かし、光源を足し、Playを押すだけ。

レシピの見た目

9つの操作で遊べるマップができます。矩形はグリッドのセル単位、アセットはライブラリのID。あとはビルダーが処理します。外周の壁は正しい角になり、スキャッターは祠を避け、松明は祭壇を照らします。

  • floorは矩形を埋めるか経路に沿って敷き、素材を混ぜ、回転をランダムにして自然な地面を作ります。
  • wallsは矩形の周りに壁ファミリーを走らせ、出入口用の隙間を空けるか、指定した辺だけに立てます。
  • proplinescatterclutterは、セル指定、経路沿い、または除外範囲付きのランダムでものを配置します。
  • lighteffectminiは松明、炎と煙、HPとリング付きのトークンを追加します。

リポジトリのai/フォルダにスキーマ、制作ガイド、完全なカタログがあります。Claude Codeなら全工程がコマンドひとつ:/create-scene

{
  "format": "vtt-recipe",
  "name": "Roadside shrine",
  "grid": { "size": 1 },
  "environment": { "preset": "dusk" },
  "ops": [
    { "op": "floor", "asset": ["realistic-surfaces/grass_floor", "realistic-surfaces/grass_patchy_floor"],
      "rect": [0, 0, 19, 15], "randomYaw": true, "blend": 4 },
    { "op": "floor", "asset": "realistic-surfaces/dirt_floor", "path": [[0, 8], [19, 8]], "width": 2 },
    { "op": "floor", "asset": "realistic-surfaces/flagstone_floor", "rect": [8, 3, 11, 5] },
    { "op": "walls", "asset": "realistic-surfaces/stone_wall", "rect": [8, 3, 11, 5], "sides": "NEW" },
    { "op": "prop", "asset": "realistic-surfaces/stone_altar", "at": [9.5, 3.5] },
    { "op": "scatter", "asset": ["realistic-surfaces/fir_tree", "realistic-surfaces/pine_tree"],
      "area": [0, 0, 19, 6], "count": 14, "avoid": [[7, 2, 12, 6]] },
    { "op": "light", "type": "torch", "at": [9.5, 1.2, 4.5], "intensity": 5, "distance": 6 },
    { "op": "effect", "type": "fire", "at": [9.5, 0.6, 4.5] },
    { "op": "mini", "asset": "characters/rogue", "at": [3, 9], "label": "Pip", "ring": "ally" }
  ]
}

よくある質問

どのAIで動きますか?

ガイドを読んでJSONを書けるアシスタントなら何でも。ガイドはリポジトリに/create-sceneコマンドを持つClaude Code向けに書かれていますが、形式自体はプレーンです。

AIが存在しないアセットを使ったら?

ビルダーがすべてのIDをライブラリと照合し、見つからないものを報告します。スターターシーンは警告ゼロでテストされています。

レシピを手書きできますか?

はい。見た目より簡単です。上の祠は9行の意図で書けています。リポジトリのテストは、examplesフォルダに置いたどのレシピも検査します。

最初のレシピを読み込もう

登録して、テーブルを開き、ファイル ▸ シーンJSONを読み込む。