ノード一覧に戻る

モデルレンダリング

model_render

組み立てたポリゴンモデルを平行投影でCPUラスタライズし、ライティング前のサーフェースGバッファへ変換します。

確認済み
解説あり

入力ポート

名前説明
モデル
model
Model
必須
メッシュブーリアンを行わず組み立てるポリゴンモデルです。

出力ポート

名前説明
サーフェース
surface
Surface
PBRマップ・深度・高さ・安定IDを持つレンダリング済みサーフェースです。
画像
image
Image
ライティング前のベースカラー画像です。
警告
warnings
Text
非致命的なクリッピングと素材互換性の診断です。

パラメータ

名前既定値範囲説明・選択肢
カメラ方位角
azimuth
Angle
45— / step 1

カメラの水平方向の角度です。アイソメ素材は45度刻みが基本です。8方向素材はここをアニメさせます。

カメラ角スナップ
camera_angle_snap
Float
00–90 / step 0.5

レンダリング前にカメラ方位角を指定刻みへ丸めます。0ならスナップしません。8方向素材では45が基本です。

見下ろし角
elevation_preset
Enum
Iso2To1

カメラの見下ろし角のプリセットです。

  • 2:1アイソメIso2To1
    26.565度。ドット絵の定番2:1アイソメです。
  • 30°Iso30
    30度のアイソメです。
  • 45°Iso45
    45度の見下ろしです。
  • 真上Top
    ほぼ真上からの見下ろしです。
  • カスタムCustom
    カメラ仰角パラメータの値を使います。
1ユニットのピクセル数
pixels_per_unit
Int
161–128

モデルの1ユニットを何ピクセルで描くかです。

余白
padding
Int
10–32

自動フィットした出力の外側に足す透明余白(px)です。

カメラ仰角
custom_elevation
Float
26.5650005340576171–89 / step 0.5

プリセットがカスタムの時のカメラ仰角(度)です。

出力フレーム
frame_mode
Enum
AutoFit

出力フレームの決め方です。アニメーションや8方向素材では固定キャンバスを使います。

  • 自動フィットAutoFit
    現在のモデルに合わせて出力サイズを自動調整します。
  • 固定キャンバスFixedCanvas
    ピクセル幅・高さとワールド中心を固定します。アニメーション素材向けです。
固定幅
fixed_canvas_width
Int
641–1024

出力フレームを固定するときの幅(px)です。アニメーションでフレーム幅を揃えるために使います。

固定高さ
fixed_canvas_height
Int
641–1024

出力フレームを固定するときの高さ(px)です。アニメーションでフレーム高さを揃えるために使います。

固定範囲X
frame_world_width
Float
40.05–256 / step 0.05

固定キャンバス時の深度・高さ正規化に使うワールド範囲のX幅です。

固定範囲Y
frame_world_depth
Float
40.05–256 / step 0.05

固定キャンバス時の深度・高さ正規化に使うワールド範囲のY奥行きです。

固定範囲Z
frame_world_height
Float
40.05–256 / step 0.05

固定キャンバス時の深度・高さ正規化に使うワールド範囲のZ高さです。

中心X
frame_center_x
Float
0-256–256 / step 0.05

固定キャンバス時の中心Xです。

中心Y
frame_center_y
Float
0-256–256 / step 0.05

固定キャンバス時の中心Yです。

中心Z
frame_center_z
Float
0-256–256 / step 0.05

固定キャンバス時の中心Zです。

概要

Model(ポリゴンメッシュ)をドット絵素材に変換するカメラです。solid_render の Model版で、パラメータ語彙は共通(方位角・見下ろし角・pixels_per_unit・FixedCanvas)。 PBRマテリアルを持つモデルを、法線・深度・素材ID付きの Surface に平行投影します。 「同じモデルからGLBとHD-2D画像の両方を作る」ワークフローの2D側の出口です。

使い方のポイント

  • 基本の位置: model_group(組み立て済み) → モデル素材割り当て → model_render → surface_light_preview。同梱サンプル workflows/model_asset_c1.ppl 参照

  • パラメータの考え方は solid_render と同じ:

    • 静止画1枚 → AutoFit、アニメ・8方向 → 必ず FixedCanvas
    • ドット密度は pixels_per_unit(16が基準)
    • 8方向素材は camera_angle_snap = 45
  • 3Dビューア(Model 3D ステージ)で角度を探して「この角度を採用」で書き戻せるのも同じ

  • 方位角はz-upのワールド座標で、正の角度は+Z側から見て+Xから+Yへ回ります。

    方位角 カメラがある側 画面右方向
    +X +Y
    90° +Y -X
  • FixedCanvasの画面範囲はCanvas Width/Height ÷ Pixels Per Unitで決まり、 frame_center_*を中心に置かれます。frame_world_*はnear/far範囲と depth/height正規化用です。モデルが画面または深度範囲を越えると warnings出力とFrame Mode付近に非致命的な警告が出ます。

  • 剛体アニメ(宝箱の開閉など)は model_transform の回転を波形で駆動 → このノード(FixedCanvas) → animation_render。GLB側には model_gltf_export の Animation Frames で同じ動きをベイクできる(workflows/model_chest_animation_c7.ppl)

よくある失敗

  • フレームサイズ・中心がフレームごとにずれる: AutoFit のまま回している。 FixedCanvas + frame_world_* を対象が収まる大きさに(solid_renderと同じ最大の罠)
  • のっぺりしてマテリアル感がない: このノードはライティングしない。 surface 出力を surface_light_preview に通し、roughness等はPBRマテリアル側で調整
  • テクスチャがにじむ・隣の面の色を拾う: テクスチャ側のgutter不足。 texture_layout_dilate で端色を延長してから pbr_material に束ねる

PBR機能の対応範囲

PBR設定 Model Render → Surface GLB Export
Base Color / Tangent Normal / Roughness / AO / Emission 対応 対応
Metallic Surfaceに専用チャンネルがなく警告して省略 対応
Linear filter 現在はNearestとして処理し警告 対応
Blend alpha 最前面だけを保持し、背面とは合成せず警告 対応

関連ノード

  • solid_render — Solid(SDF)レーンの同型カメラ
  • model_gltf_export — 同じモデルの3D側の出口(GLB)
  • surface_light_preview — 出力Surfaceのライティング
  • pbr_material / model_texture_layout — テクスチャ作りの相方
ノード一覧に戻る
モデルレンダリング — PixPipeline ノード解説