概要
IsoWorld(セマンティックな配置)を IsoScene(描画直前の内部表現)へ変換する、 アイソメの「カメラ」に相当するノードです。タイルのピクセル寸法(tile_step)、 高さ方向のステップ、キャンバスサイズはすべてここで決まります。
使い方のポイント
- IsoWorldレーンの終端はいつもこれ:
... → iso_world_compose → iso_world_to_scene → iso_scene_render / iso_scene_to_surface_geometry - タイル寸法(
tile_step_x/y,z_step)はここで一括管理する設計。ブロックごとに 持たない(2:1アイソメならstep_x=タイル幅、step_y=その半分が基本) - 静止画は既定の
AutoFit+padding。マップの一部を固定サイズで切り出したい・ アニメさせたい場合はフレーム設定を固定する AutoFitでは初期キャンバス幅・高さ・原点を使わず、負座標や64セルを超える 自由形状パスも内容全体からフレームを求める。KeepCanvasだけが指定範囲を使う- 出力可能なシーンは最大4096×4096。超過時は無言で切り取らずエラーにする
- ライティングしたい場合は Scene のまま描かず
iso_scene_to_surface_geometry→ Surface系ノードへ
メモ
IsoWorld -> IsoScene -> Rasterのうち、IsoWorldからIsoSceneへの変換を担当します- 現在は
IsoBlockを既存のIsoExtrusion相当へ落とし込む最小実装です - 既定の
frame_mode = AutoFitでは、内容に合わせてキャンバスと原点を自動調整します paddingで自動フィット時の余白を調整できますtile_step_x,tile_step_y,z_stepはここでまとめて調整し、IsoBlock側には持たせません
関連ノード
iso_world_compose— 変換前のワールド合成iso_scene_render— Sceneの画像化iso_scene_to_surface_geometry— Surfaceライティング経路への接続iso_scene_compose— Scene段階での合成(Advanced)