概要
PNGファイル書き出しの標準ノードです。1枚でもリストでも受けられ、
名前パターン({name}/{index})に従って保存します。グラフの「出口」であり、
ヘッドレス実行(--headless)が書き出すのもこのノード(と他のExport系)です。
- 副作用: あり(ファイル書き込み。並列評価から除外されます)
P15 の batch export 統合ノードです。バッチレンダーの frames / names をつなぐと variant 一括出力になります。書き出しプロファイル(保存先・名前パターン・保存モード・拡大率)はこのノードのパラメータとして保持され、プロジェクトと一緒に保存されます。
使い方のポイント
- 組み立て中は
save_mode: Disabled(既定)のままにして、書き出す時だけOverwriteにするのが安全な作法(評価のたびに実行される副作用ノードのため) - 保存先は相対パス推奨(プロジェクトフォルダ基準で解決され、フォルダも自動作成)。
未保存プロジェクトの既定は
projects/exports/images/ - 量産の黄金コンビ:
batch_render.frames → images+batch_render.names → names+name_pattern: {name}。variant名がそのままファイル名になる - ゲームエンジン用に大きく書き出すなら
scale(整数倍ニアレスト)を使う。scaleが変えるのは保存ファイルだけで、image出力は保存前の原寸先頭画像を そのまま返すため、グラフ内は原寸のまま処理できる
よくある失敗
- ファイルが出ない: ①
save_modeが Disabled のまま、②directoryが空、 のどちらかがほとんど。count出力で今回何枚保存されたかを確認できる - 古いファイルが残る:
CreateIfMissingは既存をスキップする(差分吐き足し用)。 作り直しはOverwrite - ヘッドレスで「書き出しノードが無い」と失敗する:
--require-export使用時は 有効(Disabled以外)な書き出しノードが必要。ジョブの overrides で save_mode を Overwrite に差し替えるのが定石
技術詳細
save_mode: Disabledまたはdirectory未設定の間は一切書き込みません- 名前リストの値はファイル名に使えない文字を
_に置換して使います CreateIfMissingは既存ファイルをスキップします(差分だけ吐き足す運用向け)
使用例
Batch Render の一括出力
[Seed Range] → [Batch Render] ─ frames → [Batch Export]
└ names ─────────↑
name_pattern: {name} にすると variant 名がそのままファイル名になります。
完成画像の自動書き出し口
グラフ末端に image 入力でつなぎ、save_mode: Overwrite にすると評価のたびに最新PNGが保存されます。
ヘッドレス実行(--headless)の書き出し口としてもこのノードを使います。
関連ノード
batch_render— 量産フレームの供給元(黄金コンビ)surface_export/aseprite_export/tiled_tileset_export— 形式特化の書き出しpalette_save— パレットの書き出しpreview— 保存せず確認だけしたい場合