Image Extrude
Render Texture のシルエットを輪郭にして Z 方向に押し出し、Mesh として出力します。ロゴや切り抜き素材が「板」ではなく厚みのある「物」になります。Mesh は Mesh Renderer や CopyToPoints に繋いで描画します。押し出しは画像の中心を原点に置き、前面(既定カメラ側)が z のマイナス側、背面がプラス側です。
計算はフレームを止めずに裏で行われ、完了した時点でメッシュが差し替わります。焼き直しが走るのは、入力の接続・差し替え、パラメータの変更、Bake の操作、入力映像の解像度変更のときです。焼いた結果はプロジェクトに保存されないので、ロード時にも自動で 1 回焼きます。
ノード上の設定
- Alpha / Luma — 何をシルエットとみなすか。Alpha(既定)は不透明度、Luma は輝度(0.299R + 0.587G + 0.114B)
- Res256 / Res512(既定)/ Res1024 / Res2048 — 輪郭を拾うサンプル数(長辺)。元映像より細かくはなりません
- Live — OFF(既定)は上の条件のときだけ焼く Hold 動作。ON にすると毎フレーム映像を読み戻して焼き続けます(CPU を常時使うので、動く映像を追いたいときだけ)
- Bake — 今の映像でもう一度焼く。
Bakeポート(トリガー)とLiveポートは、このボタンとトグルをグラフから操作する口です
ポートの補足
- Threshold — 0〜1にクランプ(既定0.5)。この値以上をシルエットの内側とみなします
- Depth — 押し出しの厚み(既定1)
- Size — 画像の横幅をワールド単位で(既定20、下限0.1)。高さは映像の縦横比から決まります
- Simplify — 0〜1にクランプ(既定0.3)。輪郭の点を間引く強さ。0 で間引きなし
- Bevel — 前後の縁の面取り幅(ワールド単位、既定0 = 面取りなし)。細い部分で面取りが破綻する輪郭は幅が自動で縮められ、ステータスに「面取りを縮めた輪郭N本」と出ます
- Bevel Segments(ノード上の表示は Segments)— 面取りの分割数。1〜8にクランプ(既定1)。1 は 45° の平らな面取り、2 以上で丸い面取り
- Smooth — 0〜1にクランプ(既定0.25)。輪郭の階段(8bit アルファのギザギザ)を均す強さ
- FrontFace / BackFace(表示は Front Face / Back Face)— 前面・背面の蓋を張るか(既定 両方 ON)。背面だけ OFF にすると器のような形、両方 OFF で輪郭の筒になります
輪郭の点数は合計 16384 点までで、超えた分は均等に間引かれます(大きな輪郭が丸ごと消えることはありません)。
ステータス行には「In 未接続」「Baking…」「Baked: N polys / M verts」(Live 中は「Live: …」)が出ます。映像の読み戻しが 3 回続けて失敗すると止まり、Bake で再試行します。
入力ポート
| Port ID | 型 |
|---|---|
Render Texture | RenderTexture |
Threshold | float |
Depth | float |
Size | float |
Simplify | float |
Bevel | float |
Bevel Segments | int |
Smooth | float |
FrontFace | bool |
BackFace | bool |
Bake | trigger |
Live | bool |
出力ポート
| Port ID | 型 |
|---|---|
Mesh | MeshOutput |
スクリプトから設定可能なメンバー
| パス | 型 |
|---|---|
thresholdInput | float |
depthInput | float |
sizeInput | float |
simplifyInput | float |
bevelInput | float |
bevelSegmentsInput | int |
smoothInput | float |
frontFaceInput | bool |
backFaceInput | bool |
liveInput | bool |
currentLive | bool |
Synapse Apps(スクリプティング)
await synapse.modules.create({ type: "ImageExtrude" }) 














