
概要 📖 – 矩形プリミティブを生成
Rectangle SOPは、指定平面に四角形プリミティブを生成し、Size / Center / Anchor で配置と UV を制御する SOPです。Orientation で配置平面を選び、カメラビューフィット・入力 SOP のバウンディング追従・UV 付与など、矩形 1 枚を素早く作る基本オペレータです。
主な用途 🎯
- 四角形ポリゴンの生成 (XY / YZ / ZX のいずれかの平面に Size と Center で配置)
- カメラビューに自動フィットする矩形 (Orientation を Fill Camera View にしてビルボード・スクリーン面として使用)
- 入力 SOP のバウンディングに沿った矩形配置 (Modify Bounds で入力ジオメトリの範囲に自動フィット)
- UV 付き矩形面のレンダリング下地 (Texture Coordinates を Face にしてテクスチャ表示の素地を作る)
- Anchor U / V による位置・スケール・回転の基準点制御で、変形やコピー配置時のピボットを精密に指定
データフロー 🔄
入力 (オプション): バウンディング元 SOP
↓
Orientation で基準平面を決定
↓
Size / Center / Anchor で矩形配置を指定
↓
Texture Coordinates / Compute Normals で属性を付与
↓
出力: 矩形プリミティブの SOP
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
Page 📁
Orientation .orient 🧭
矩形を配置する基準平面、またはカメラビュー追従モード
| 項目 | 内部名 | 説明 |
|---|---|---|
| XY plane | .xy |
XY 平面 (Z 軸が法線方向) に矩形を生成 |
| YZ plane | .yz |
YZ 平面 (X 軸が法線方向) に矩形を生成 |
| ZX plane | .zx |
ZX 平面 (Y 軸が法線方向) に矩形を生成 |
| Fill Camera View | .cam |
指定したカメラの方向を向き、ビューを埋めるサイズに自動調整 (ビルボード・スクリーン面用途) |
Camera 追従関連パラメータ 📷
Camera .camera 🎥
– Camera (カメラ参照) — Orientation が Fill Camera View のときに参照する Camera COMP を指定
– パス入力欄に Camera COMP の OP path (例: /project1/cam1) を入れる
Camera Z .camz 📏
– Camera Z (カメラ距離) — カメラからの距離を指定する任意の単位値
– 矩形をカメラから Camera Z 単位だけ離した位置に置き、その距離でビューを埋めるようにスケーリングする
Camera Aspect .cameraaspect 🖼️
– Camera Aspect (カメラのアスペクト比) — 参照カメラのビューポートに矩形のアスペクト比を合わせる
– cameraaspectx / cameraaspecty の 2 軸で指定、テクスチャをカメラビューにそのまま合わせやすい
バウンディング入力関連パラメータ 📐
Modify Bounds .modifybounds 🔧
– Modify Bounds (バウンディング修正) — 入力 SOP が接続されているときのみ有効
– オンにすると入力ジオメトリのバウンディングに矩形をフィットさせつつ、下記 Size / Center で位置・スケールを追加修正できる
– オフのときは入力のバウンディングそのままで矩形が配置される
Size / Center 関連パラメータ 📏
Size .size 📏
– Size (サイズ) — 矩形の X / Y 方向の寸法
– sizex / sizey の 2 軸で指定
– Orientation が Fill Camera View または入力 SOP 接続時はスケール係数として機能、それ以外は絶対サイズとして機能
Center .t 📍
– Center (中心位置) — 矩形の中心を X / Y / Z 座標で指定
– tx / ty / tz の 3 軸
– カメラ追従モードや入力 SOP 接続時はオフセットとして機能、それ以外は絶対位置として機能
Anchor 関連パラメータ ⚓
Reverse Anchors .reverseanchors ↔️
– Reverse Anchors (アンカー反転) — Anchor U / Anchor V の方向を反転させる
Anchor U .anchoru 📍
– Anchor U (Uアンカー) — X 方向で位置・スケール・回転の基準となるアンカー位置を指定
– コピーや変形の支点を矩形の左端・中央・右端などに精密に揃えるときに使う
Anchor V .anchorv 📍
– Anchor V (Vアンカー) — Y 方向で位置・スケール・回転の基準となるアンカー位置を指定
– コピーや変形の支点を矩形の下端・中央・上端などに精密に揃えるときに使う
Texture Coordinates .texture 🎨
矩形面への UV テクスチャ座標割り当て方式
| 項目 | 内部名 | 説明 |
|---|---|---|
| Off | .off |
UV 座標を生成しない (UV アトリビュート無し) |
| Face | .face |
矩形の頂点に (0, 1) 範囲の UV 座標を割り当て (テクスチャ表示の標準設定) |
法線関連パラメータ 🧭
Compute Normals .normals 🧮
– Compute Normals (法線計算) — オンにすると矩形面のサーフェス法線 (N アトリビュート) を計算する
– レンダリングでライティングを正しく評価するために必要
実践アイデア 💡
Example 1: 基本矩形を 1 ノードで生成 🟢
Rectangle SOP (Orientation=XY plane, Size=2,2, Texture=Face) → Geometry COMP → Render TOP
Rectangle SOP デフォルト設定で 2×2 単位の矩形をXY 平面に生成し、Geometry COMP に渡してレンダリングする最小構成。スクリーン面・テクスチャ表示用 quad・床面の素地として頻繁に使う基本パターン。
- Rectangle SOP を配置し
OrientationをXY planeに設定 Sizeを 2, 2 に、Centerを 0, 0, 0 に設定して原点周りに展開Texture CoordinatesをFaceにして UV を生成Compute Normalsをオンにしてライティング用法線を有効化- Geometry COMP に接続し、Camera COMP / Light COMP / Render TOP でレンダリング結果を確認
Example 2: カメラ追従ビルボード 📷
Rectangle SOP (Orientation=Fill Camera View, Camera=/project1/cam1, Camera Z=5) → Geometry COMP
Orientation を Fill Camera View に切り替え、参照カメラを指定して矩形をカメラ正面の指定距離に配置する例。Movie File In TOP をテクスチャに割り当てれば、画面いっぱいに動画を表示するビルボードとして使える。
- Rectangle SOP を配置し
OrientationをFill Camera Viewに変更 Cameraに参照する Camera COMP の OP path (例:/project1/cam1) を入力Camera Zをカメラからの距離 (例: 5) に設定して矩形の前後位置を決定Camera Aspectをカメラのアスペクト比に合わせて矩形の縦横比を一致させる- Geometry COMP に接続し、TOP テクスチャを MAT 経由で割り当ててカメラ正面の表示面として確認
Example 3: バウンディング追従マスク 📐
入力 SOP → Rectangle SOP (Modify Bounds=On, Size 倍率指定) → Geometry COMP
入力ジオメトリのバウンディング Box に矩形を自動フィットさせ、Modify Bounds をオンにしたうえで Size を倍率として与えてマスクや背景パネルを生成する例。後段で Copy SOP と組み合わせれば、複数オブジェクトのアウトラインを一括で囲む使い方もできる。
- 入力 SOP (Box SOP / Sphere SOP など) を Rectangle SOP の input 1 に接続
Modify Boundsをオンにして入力ジオメトリのバウンディングに矩形をフィットSizeを 1.2, 1.2 などにして入力バウンディングより少し大きい矩形に拡張Centerでオフセットを掛けて矩形の位置を微調整- Geometry COMP に接続して結果を確認、必要に応じて後段で MAT を割り当てる
関連オペレータ 🔗
類似機能OP 🔍
- Grid SOP — 細かく分割された平面メッシュ (Rectangle に Rows / Cols 分割と NURBS / Bezier モードを追加したような上位互換)
- Box SOP — 立方体・直方体プリミティブ (Rectangle は Box の 1 面に相当)
- Circle SOP — 円・円盤プリミティブ (Rectangle と並ぶ 2D 基礎形状 SOP)
組み合わせ推奨OP 🔄
- Transform SOP — Rectangle の出力にさらに移動・回転・スケールを掛ける
- Copy SOP — Rectangle を複製してタイル状・パターン状に並べる
- Noise SOP — Rectangle の頂点をノイズで揺らして歪んだ面を生成
- Geometry COMP — Rectangle の出力をレンダリングパイプラインに投入
前処理・後処理SOP 🎯
Info CHOP情報 📊
Rectangle SOP は Info CHOP による詳細情報取得に対応しています。
ジオメトリ統計 📐
num_points: この SOP に含まれるポイント数num_prims: この SOP に含まれるプリミティブ数num_particles: この SOP に含まれるパーティクル数
GPU 転送タイミング 🎮
last_vbo_update_time: 別スレッドで SOP の CPU データを GPU 上のジオメトリデータに更新するのにかかった時間 (フレーム時間外)last_meta_vbo_update_time: 別スレッドで metaball や NURBS のようなメタサーフェスジオメトリデータを GPU に更新するのにかかった時間 (フレーム時間外)
汎用オペレータ情報 🔄
total_cooks: プロセス開始以降にこのオペレータがクックされた合計回数cook_time: 直近のクック所要時間 (ミリ秒)cook_frame: このオペレータが最後にクックされたフレーム番号warnings: このオペレータの警告数errors: このオペレータのエラー数
クック統計 ⏱️
total_cooks:total_cooks— プロセス開始以降にこのオペレータがクックされた合計回数cook_time:cook_time— 直近のクック所要時間 (ミリ秒)cook_frame:cook_frame— このオペレータが最後にクックされたフレーム番号
トラブルシューティング ⚠️
よくある問題と解決策 🔧
❌ Problem: Fill Camera View モードにしても矩形がカメラに追従しない
✅ Solution:
Cameraパラメータに参照する Camera COMP の OP path が正しく入っているか確認 — 空または存在しないパスを指していると追従しないCamera Zが 0 のままだとカメラ位置と一致して見えなくなる場合があるため、適切な距離 (例: 5 以上) を設定Camera Aspectがカメラのビューポートと異なるとアスペクト比がずれるため、Camera COMP のAspectと合わせる
❌ Problem: Modify Bounds が効かない
✅ Solution:
Modify Boundsは input 1 に SOP が接続されているときのみ有効になる仕様 — 上流に SOP を接続しているか確認- 入力 SOP のポイント数が 0 の場合はバウンディングが取得できないため挙動が無視される — 上流の SOP がジオメトリを出力しているか確認
Modify BoundsをオフのままだとSize/Centerの変更が入力ジオメトリのバウンディングに上書きされて反映されない
❌ Problem: テクスチャが貼られない / UV が出ない
✅ Solution:
Texture CoordinatesがOffのままだと UV が生成されない仕様 —Faceに切り替えて (0, 1) 範囲の UV を付与- 矩形自体に UV があっても後段の SOP で UV を上書き / 削除している可能性があるため、レンダリング直前の SOP に Info DAT を当てて UV アトリビュートの有無を確認
- MAT 側でテクスチャ参照が外れていないか (TOP path / Sampler の設定) も併せて確認
❌ Problem: Anchor U / V を変えても支点が思った位置にならない
✅ Solution:
Anchor U/Anchor Vは -1 〜 1 の正規化座標で矩形の端から端を示す仕様 — 0 が中央、1 / -1 が端- 想定と逆方向に動く場合は
Reverse Anchorsをオンにしてアンカー方向を反転 - Anchor は矩形ローカル座標で評価されるため、後段で Transform SOP を適用するとさらにワールド座標が変動する点に注意
参考資料 📚
その他 🔗
- TouchDesigner Wiki — SOP 概要
- TouchDesigner Wiki — Category:SOPs
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group
公式リソース 📖
- TouchDesigner公式ドキュメント – Rectangle SOP
- TouchDesigner公式ドキュメント – Grid SOP
- TouchDesigner公式ドキュメント – Box SOP
- TouchDesigner公式ドキュメント – Convert SOP

