
概要 📖 – 複数親トランスフォームのブレンドカメラ
Camera Blend COMPは、最大 4 つの親コンポーネントの Transform を Weight と Mask でブレンドし、単一のカメラ Transform に合成する COMPです。Blend / Sequence / Constrain の 3 モードを切替えることで、複数視点間の滑らかな補間や追従カメラを 1 ノードで実現します。
主な用途 🎯
- 複数の親 COMP の Transform をブレンドして滑らかにカメラを移動
- Sequence モードで視点を別の親オブジェクトへアニメーション切替
- Constrain モードで親に追従しつつ相対位置・回転を維持
- Weight / Mask パラメータで各親の影響度と T/R/S 成分を独立制御
- Normal Offset と Orient Axes で 3 親による三角平面補間カメラを構築
データフロー 🔄
入力: 親 COMP 群 (最大 4 つの parent transform)
↓
Blend Page の Type / Weight[1-4] / Mask[1-4] で合成
↓
出力: ブレンド後のカメラ Transform を Render TOP に提供
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
Blend Page 📋
Type .parenttype 🎛️
親トランスフォーム (Translate / Rotate / Scale) の合成方式を選択するメニューパラメータ
| 項目 | 内部名 | 説明 |
|---|---|---|
| Blend | .blend |
最初の 4 つの入力親を Weight[1-4] / Mask[1-4] で重み付けブレンド |
| Sequence | .sequence |
Sequence 値で 1 つの親を選択してその Transform を採用 (アニメーション切替に利用) |
| Constrain | .constrain |
指定した親に拘束、相対 Transform を保持。親変更時はジャンプせず追従 |
Sequence / Reset .sequence 🔄
Sequence .sequence ▶️
– Type が Sequence または Constrain のとき、どの入力親をアクティブにするかを指定するインデックス値
– 入力範囲外の値は親解除 (unparenting) と解釈される
Reset Frame .reset ♻️
– Constrain モード時、このフレームで最終 Transform が初期位置にリセットされる
– 他フレームでは拘束親が変化しても相対 Transform は維持
Weight / Mask (1〜4) .blendwm ⚖️
各入力親に対する重み (Weight) と、ブレンド対象成分 (Mask = T/R/S 個別) を指定するシーケンスパラメータ群
Weight 1〜4 .blendw1 🎚️
– 入力親 1〜4 それぞれの寄与度 (0.0〜1.0 を目安) を指定
– 合計が 1.0 になる必要はなく、内部で正規化される
Mask 1〜4 .blendm1 🎭
– 各親 Transform のうち、どの成分をブレンドに含めるかを指定
– 例えば Translate のみブレンドして Rotate は最初の親に固定、等の選択が可能
三角平面補間オプション .triblend 🔺
Normal Offset .noffset 📐
– 入力親がちょうど 3 つの場合、3 親が形成する三角平面に対して垂直方向に子の位置をオフセット
– 平面上から離れた追従カメラを構築するときに使用
Orient Axes .axesorient 🧭
– 3 親入力時に、子の局所軸を親の配置に揃える
– 第 1 親=軸中心 / 第 2 親=+X 方向 / 第 3 親=+Y 方向
Short Rotation .shortrot 🔁
– 2 入力ブレンド時にクォータニオン補間を使い、最短経路で回転を補間
– 大きな角度差で回転が暴れるのを防ぐ
Xform Page 📁
Transform Order .xord 🎛️
コンポーネントに対する Scale / Rotate / Translate の適用順序を指定するメニューパラメータ
| 項目 | 内部名 | 説明 |
|---|---|---|
| Scale Rotate Translate | .srt |
T * R * S * Position (デフォルト) |
| Scale Translate Rotate | .str |
R * T * S * Position |
| Rotate Scale Translate | .rst |
T * S * R * Position |
| Rotate Translate Scale | .rts |
S * T * R * Position |
| Translate Scale Rotate | .tsr |
R * S * T * Position |
| Translate Rotate Scale | .trs |
S * R * T * Position |
Rotate Order .rord 🎛️
X / Y / Z 軸の回転を合成する順序を指定するメニューパラメータ
| 項目 | 内部名 | 説明 |
|---|---|---|
| Rx Ry Rz | .xyz |
R = Rz * Ry * Rx |
| Rx Rz Ry | .xzy |
R = Ry * Rz * Rx |
| Ry Rx Rz | .yxz |
R = Rz * Rx * Ry |
| Ry Rz Rx | .yzx |
R = Rx * Rz * Ry |
| Rz Rx Ry | .zxy |
R = Ry * Rx * Rz |
| Rz Ry Rx | .zyx |
R = Rx * Ry * Rz |
Translate / Rotate / Scale / Pivot .trsp 🎯
各 3D 軸ごとの並進・回転・スケール・ピボット:
- Translate (t):
tx/ty/tz— 各軸の並進量。ビューポート上でのドラッグでも編集可能 - Rotate (r):
rx/ry/rz— 各軸の回転量 (度) - Scale (s):
sx/sy/sz— 各軸の非一様スケール (カメラへの適用は非推奨) - Pivot (p):
px/py/pz— 回転・スケールの基準点
Uniform Scale .scale 📏
Uniform Scale .scale 📏
– 3 軸を一括で同じ倍率にスケール
– カメラへの適用は非推奨だが、必要な場合はビューポートとレンダリング結果を一致させる目的に限る
Parent Transform Source .parentxformsrc 🌐
このオブジェクトの初期位置を決定する基準
| 項目 | 内部名 | 説明 |
|---|---|---|
| Parent (Hierarchy) | .parent |
ネットワーク階層上の親 COMP の Transform を継承 |
| Specify Parent Object | .specifyparent |
Parent Object パラメータで明示指定した COMP の Transform を継承 |
| World Origin | .worldorigin |
ワールド原点を基準とする (継承なし) |
Parent Object .parentobject 🔗
Specify Parent Object モード時の親 COMP パス指定:
- Parent Object パス:
parentobject— 任意の COMP パスを指定して、その Transform に拘束
Look At / Forward Direction .lookat 👀
カメラの向きを特定の COMP に追従させる Look At と前方向軸
Look At .lookat 🎯
– 指定した 3D COMP の原点に向かい続けるようカメラを自動オリエント
– Null COMP をターゲットにすることで、見えないターゲットにカメラを誘導できる
Forward Direction .forwarddir ➡️
– どの軸方向を前方とみなすかを 6 値から選択
– 利用可能な値:
- +X
- -X
- +Y
- -Y
- +Z
- -Z
Look At Up Vector .lookup ⬆️
– Look At 時の上方向を制御するモードを 4 値から選択
– 利用可能な値:
- Don't use up vector
- Use up vector
- Use quaternions
- Use Roll
Path SOP / Roll / Position .pathsop 🛤️
SOP のカーブに沿ってカメラを動かすパスアニメーション設定:
- Path SOP:
pathsop— カメラが追従する SOP パス - Roll:
roll— パス追従時のロール角度 - Position:
pos— パス上の位置 (0=始点、1=終点、最大 10 で複数周回) - Orient along Path:
pathorient— 有効時、+Z 軸がパス進行方向に整列 - Orient Up Vector (X/Y/Z):
upx/upy/upz— パス追従時の +Y 軸が向く方向ベクトル - Auto-Bank Factor:
bank— パス曲率に応じた自動ロール量 (0 で無効化)
Pre-Xform Page 🔧
Apply Pre-Transform .pxform ✅
Apply Pre-Transform .pxform ✅
– Pre-Xform Page の Transform を有効化
– メインの Xform の前段で適用されるため、座標系の前処理に利用
Pre-Xform Transform Order .pxord 🎛️
Pre-Xform 段の Scale / Rotate / Translate 適用順序
| 項目 | 内部名 | 説明 |
|---|---|---|
| Scale Rotate Translate | .srt |
T * R * S * Position |
| Scale Translate Rotate | .str |
R * T * S * Position |
| Rotate Scale Translate | .rst |
T * S * R * Position |
| Rotate Translate Scale | .rts |
S * T * R * Position |
| Translate Scale Rotate | .tsr |
R * S * T * Position |
| Translate Rotate Scale | .trs |
S * R * T * Position |
Pre-Xform Rotate Order .prord 🎛️
Pre-Xform 段の X / Y / Z 回転合成順序
| 項目 | 内部名 | 説明 |
|---|---|---|
| Rx Ry Rz | .xyz |
R = Rz * Ry * Rx |
| Rx Rz Ry | .xzy |
R = Ry * Rz * Rx |
| Ry Rx Rz | .yxz |
R = Rz * Rx * Ry |
| Ry Rz Rx | .yzx |
R = Rx * Rz * Ry |
| Rz Rx Ry | .zxy |
R = Ry * Rx * Rz |
| Rz Ry Rx | .zyx |
R = Rx * Ry * Rz |
Pre-Xform TRS / Pivot / Uniform Scale .pretrs 📐
Pre-Xform 段の並進・回転・スケール・ピボット:
- Translate (pt):
ptx/pty/ptz— Pre-Xform 並進 - Rotate (pr):
prx/pry/prz— Pre-Xform 回転 - Scale (ps):
psx/psy/psz— Pre-Xform スケール - Pivot (pp):
ppx/ppy/ppz— Pre-Xform ピボット - Uniform Scale (pscale):
pscale— Pre-Xform 段の一様スケール
Pre-Xform 操作ボタン / Matrix 入力 .preops 🛠️
Pre-Xform のリセット・コミット・行列直接指定:
- Reset Transform:
preset— Pre-Xform の Transform をゼロにリセット - Commit to Main Transform:
pcommit— Pre-Xform を Main Xform へコピーして Pre-Xform 側はリセット - Xform Matrix / CHOP / DAT:
xformmatrixop— 4×4 行列を直接指定。適用順序はXformMatrix * PreXForm * Position
View Page 🎥
Projection .projection 🔭
投影方式を Perspective / Orthographic / Blend / Custom Matrix から選択するメニューパラメータ
| 項目 | 内部名 | 説明 |
|---|---|---|
| Perspective | .perspective |
標準的な遠近投影 (FOV / Focal を使用) |
| Orthographic | .ortho |
平行投影 (Ortho Width で幅を制御) |
| Perspective to Ortho Blend | .persporthoblend |
Projection Blend で 0=Perspective ⇔ 1=Orthographic を補間 |
| Custom Projection Matrix | .custommatrix |
projmatrixop で 4×4 行列を直接指定 |
Projection Blend / Ortho Width .projblend 🎚️
Projection Blend .projectionblend 🎚️
– Perspective to Ortho Blend モード時の補間値
– 0=Perspective、1=Orthographic
Ortho Width .orthowidth 📐
– Orthographic モード時に表示するワールド幅
– 値を大きくするほど広範囲が画面に収まる
Viewing Angle Method .viewanglemethod 📷
Perspective モードで画角をどのパラメータで指定するかを選択
| 項目 | 内部名 | 説明 |
|---|---|---|
| Horizontal FOV | .horzfov |
fov パラメータを水平方向画角 (度) として解釈 |
| Vertical FOV | .vertfov |
fov パラメータを垂直方向画角 (度) として解釈 |
| Focal Length and Aperture | .focalaperture |
focal と aperture で実写カメラ風の指定 |
FOV / Focal / Aperture .fov 🔍
画角・焦点距離・センサーサイズの指定:
- FOV Angle:
fov— 画角 (度)。Viewing Angle Method が Horizontal / Vertical のときに有効 - Focal Length:
focal— 焦点距離 (mm)。Focal Length and Aperture モード時に有効 - Aperture:
aperture— 撮像センサーサイズ (mm)。Focal Length and Aperture モード時に有効
Near / Far .nearfar 📏
クリッピング平面 (描画される深度範囲)
Near .near 📍
ニアクリップ平面までの距離。これより手前のジオメトリは描画されない。z-fighting 対策時は Near と Far の差を縮める。
Far .far 🏔️
ファークリップ平面までの距離。これより奥のジオメトリは描画されない。
Window X/Y / Window Size / Window Roll .window 🪟
ウィンドウオフセット・ズーム・ロール:
- Window X / Y:
winx/winy— ウィンドウ中心のオフセット。カメラを動かさずに視界をパン - Window Size:
winsize— ウィンドウサイズ (ズーム効果) - Window Roll:
winroll— ウィンドウ枠を回転 (度)
IPD Shift / Proj Matrix .ipdshift 👓
ステレオ / VR シフトと Custom Projection Matrix:
- IPD Shift:
ipdshift— 瞳孔間距離 (m) によるカメラの左右シフト。VR / Cube Map レンダリング時は Translate X ではなくこのパラメータを使う - Proj Matrix / CHOP / DAT:
projmatrixop—Custom Projection Matrixモード時に参照する 4×4 行列の供給元
Background Color .bgcolor 🎨
Render TOP 背景色とアルファ:
- Red / Green / Blue:
bgcolorr/bgcolorg/bgcolorb— 背景色 RGB - Alpha:
bgcolora— 背景アルファ
Settings Page ⚙️
Fog .fog 🌫️
ビューポートに描画するフォグ (霧) の方程式を選択するメニューパラメータ
| 項目 | 内部名 | 説明 |
|---|---|---|
| Off | .off |
フォグ無効 |
| Linear | .linear |
線形フォグ。Fog Near〜Fog Far 間で線形補間 |
| Exponential | .exp |
指数フォグ。Fog Density で密度を制御 |
| Squared Exponential | .exp2 |
二乗指数フォグ。より急激な減衰 |
Fog 設定値 .fogvals 🌁
Fog の密度・距離・色・透明度・テクスチャ:
- Fog Density:
fogdensity— 指数系フォグの密度。負値は許可されない - Fog Near:
fognear— 線形フォグの開始距離 - Fog Far:
fogfar— 線形フォグの終了距離 - Fog Color (R/G/B):
fogcolorr/fogcolorg/fogcolorb— フォグの色 - Fog Alpha:
fogalpha— シーン背景の不透明度制御 - Fog Map:
fogmap— フォグ用テクスチャマップ
Camera Light Mask / Material .camlightmask 💡
Camera Light Mask .camlightmask 💡
このカメラから見たレンダリングに影響する Light COMP の部分集合を指定。Render TOP の Light リストと AND 条件で合成される。
Material .material 🎨
シーン全体に強制適用するマテリアル (オーバーライド)。デバッグや単色プレビューに便利。
Render Page 🎬
Material / Render フラグ .material 🎨
ジオメトリへのマテリアル割り当てと描画可否
Material .material 🎨
内部ジオメトリへ適用する MAT を指定。
Render .render 🖼️
Render TOP からの描画可否。COMP の Render Flag と論理 AND で評価される。
Draw / Pick Priority .drawpriority 🏷️
描画順序とピック優先度:
- Draw Priority:
drawpriority— 小さい値の COMP ほど後に描画される。Transparency 処理時に重要 - Pick Priority:
pickpriority— Render Pick CHOP / DAT の Search Area で複数候補があるときの選別基準
Wireframe Color / Light Mask .wcolor 📐
ワイヤーフレーム色とライトマスク:
- Wireframe Color (R/G/B):
wcolorr/wcolorg/wcolorb— ワイヤーフレームシェーディング時の表示色 - Light Mask:
lightmask— 影響を受ける Light COMP の絞り込み (Render TOP の Light リストと AND)
Common Page 🔧
Parent Shortcut .parentshortcut 🔗
コンポーネント内部からこの COMP へのパスとして使えるショートカット名:
- Parent Shortcut: コンポーネント内部の任意の場所からこの COMP を参照する際のショートカット名 (
parent.<name>形式で利用可能)
Global OP Shortcut .opshortcut 🌐
プロジェクト全体からこの COMP を参照するグローバル名:
- Global OP Shortcut: プロジェクト内のあらゆる場所からこの COMP へのパスとして使えるグローバル名 (
op.<name>形式で利用可能)
実践アイデア 💡
Example 1: 2 つの親 COMP 間でカメラを補間 🎬
Null COMP (A) + Null COMP (B) → Camera Blend COMP (Type=Blend, Weight1=0.7, Weight2=0.3) → Render TOP
2 つの Null COMP を入力親とし、Weight1 / Weight2 をアニメーションさせることでカメラを 2 視点間で滑らかに移動。Mask で Translate のみブレンドし、Rotate は片側を維持する設定も可能。
- Camera Blend COMP の Input 1 / Input 2 に 2 つの Null COMP を接続
TypeをBlendに設定Weight 1を0.7、Weight 2を0.3に設定- Mask 1 / Mask 2 を Translate のみに絞ることで位置だけブレンド (回転は最初の親を維持)
- Render TOP の Camera 欄に
/camblend1を登録
Example 2: Sequence モードで複数視点をアニメーション切替 🔄
Null COMP (cam1) + Null COMP (cam2) + Null COMP (cam3) → Camera Blend COMP (Type=Sequence) → Render TOP
3 つの視点用 Null COMP を Camera Blend の 3 入力に接続し、Sequence 値を 0 → 1 → 2 とアニメーションすることで、視点を順次切替えるカットインカメラを構築。Short Rotation を有効にすると 2 視点間の回転補間が最短経路で行われる。
- 3 つの Null COMP を視点位置として配置し Camera Blend の Input 1〜3 に接続
TypeをSequenceに設定Sequenceパラメータを 0→1→2 と Animation COMP / CHOP で駆動Short Rotationを有効化して回転補間を安定化
Example 3: Constrain モードで動的親追従カメラ 🎯
動的に動く Geometry COMP (player) → Camera Blend COMP (Type=Constrain, Sequence=0) → Render TOP
プレイヤーキャラクターを表す Geometry COMP を入力親とし、Constrain モードで相対オフセットを保ったまま追従。Reset Frame を指定すれば、そのフレームで現在の相対位置を新しいリファレンスとして再キャプチャできる。
- 追従対象の Geometry COMP を Camera Blend の Input 1 に接続
TypeをConstrain、Sequenceを0に設定- 初期フレームでカメラを希望のオフセット位置に配置 (Translate Z など)
Reset Frameを初期フレームに設定して相対 Transform を確定- プレイヤー Geometry が動いてもカメラは同じ相対関係を維持
関連オペレータ 🔗
類似機能OP 🔍
- Camera COMP — 親トランスフォームブレンド機能を持たない標準カメラ
- Geometry COMP — 視点ではなくシーン側を提供する 3D コンテナ
- Null COMP — Blend / Constrain の親オブジェクトとして頻用される位置マーカー
組み合わせ推奨OP 🔄
- Render TOP — Camera Blend の出力視点を 2D 画像にレンダリング
- Geometry COMP — Camera Blend が視界に収めるシーン側
- Null COMP — Blend の入力親として複数の視点候補を配置
- Animation COMP — Sequence / Weight 値をキーフレームでアニメーション
- Light COMP — Render TOP に光源として供給
前処理・後処理COMP 🎯
Info COMP情報 📊
この COMP は Info CHOP / Info DAT による詳細情報取得に対応しています。COMP の World Transform / Local Transform 行列、子 COMP のリスト、入力親数などが取得可能です。
COMP 固有情報 📦
num_children: コンポーネント内部の子 OP の総数num_dats: 内部 DAT の数num_chops: 内部 CHOP の数num_tops: 内部 TOP の数num_sops: 内部 SOP の数
汎用オペレータ情報 🔄
total_cooks: プロセス開始からのクック回数cook_time: 最後のクック時間 (ミリ秒)cook_frame: 最後にクックされたフレーム番号warnings: 警告数errors: エラー数
トラブルシューティング ⚠️
よくある問題と解決策 🔧
❌ Problem: 親トランスフォームがブレンドされず最初の親しか反映されない
✅ Solution:
TypeがBlendになっているか確認 (SequenceやConstrainでは単一親のみ採用)Weight 2〜Weight 4が 0 になっていないか確認Mask 2〜Mask 4で対象成分 (T / R / S) が無効化されていないか確認
❌ Problem: Sequence モードで補間が突然ジャンプする
✅ Solution:
Short Rotationを有効化してクォータニオン補間で最短経路に揃えるSequence値を整数ではなく小数 (例: 0.0 → 1.0) でアニメーションして連続補間- 親 COMP 間の Rotate 値が 180° を跨ぐ場合は中間にダミー親を挟む
❌ Problem: Constrain モードで親を切り替えると視点がジャンプする
✅ Solution:
Reset Frameを新しい親に切り替えるフレームに設定し相対 Transform を再キャプチャ- 公式仕様上、Constrain は親変更時にジャンプしない設計だが、Sequence 値が小数 / 範囲外だと飛ぶことがある
- 切替直後の数フレームは
Typeを一時的にBlendに切替えて Weight アニメーションでフェードする回避策も有効
参考資料 📚
その他 🔗
- TouchDesigner Wiki — COMP 概要
- TouchDesigner Wiki — Category:COMPs
- TouchDesigner Wiki — Category:Components
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group
公式リソース 📖
- TouchDesigner公式ドキュメント – Camera Blend COMP
- TouchDesigner公式ドキュメント – Camera COMP (共有パラメータの基本仕様)
- TouchDesigner公式ドキュメント – Render TOP

