Circle POP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】

※当サイトにはプロモーションリンクが含まれます。

Circle POP の円・円弧ポイント生成機能を示す図

記事更新の通知はXでアナウンス٩(๑❛ᴗ❛๑)
@maru6o6をフォロー

概要 📖 – 円・円弧形状の点群生成

Circle POPは、円・円弧・楕円形状のポイントとプリミティブを生成し、Normal・Tangent・UV 属性を付与する POPです。Divisions の値を絞れば三角形・六角形などの多角形近似としても活用でき、Arc Angles と組み合わせて開いた弧・扇形ジオメトリも生成できます。

主な用途 🎯

  • 完全な円形ポイントクラウドの生成
  • Arc Angles による円弧(開いた弧)の生成
  • Orientation による XY / YZ / ZX 平面の切替
  • Divisions による多角形近似(六角形・八角形等)の生成
  • Normal / Tangent 属性出力によるテクスチャマッピング基準ベクトルの提供

データフロー 🔄

入力: (任意) バウンディングボックス参照 POP

Circle POP(Radius / Divisions / Arc Angles / Connectivity 設定)

出力: 円ポイント + 接続プリミティブ + Normal / Tangent / UV 属性

Tips

初心者の方は、以下日本語書籍も手元にあると安心です。

まる。
まる。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!


パラメータ解説 ⚙️

Circle Page 📋

Connectivity .connectivity 🎛️

ポイント同士をどう接続して面・線を構成するかの種別

項目 内部名 説明
None .none ポイントを接続せず、純粋なポイントクラウドのみ出力
Point Primitives .points 各ポイントを Point Primitive として出力
Surface .surface 閉じた円板の面プリミティブを生成
Line Strip .linestrip 1 本の連続ラインで外周を構成
Lines .lines セグメントごとに独立した線プリミティブを生成

Orientation .orient 🧭

円を配置する平面の方向

項目 内部名 説明
XY Plane .xy XY 平面に配置 (奥行きが Z)
YZ Plane .yz YZ 平面に配置 (奥行きが X)
ZX Plane .zx ZX 平面に配置 (奥行きが Y)

形状基本パラメータ 📏

Modify Bounds .modifybounds 🔄
– 入力が接続されている場合のみ有効
– 入力 POP のバウンディングを基準に Circle 形状を変調

Radius .rad 📐
– 円の半径を radx / rady 個別指定(楕円可)
– 同値にすると正円、異なる値にすると楕円となる

Divisions .divs 📈
– 円周の分割数(多いほど滑らかな円、少ないと多角形に近づく)
– 3 で三角形、6 で六角形、64 以上で実用上の正円見え

Closed .closed 🔁
– 最後の頂点を最初の頂点に接続するか
– Arc Angles で開いた弧を作る場合はオフにする

Arc Angles .angle 📐
beginangle / endangle で弧の開始・終了角度を指定
– 0〜360 で完全円、それ以外で円弧・扇形を生成

Anchor 🎯

原点 (0,0) に対して円のどの位置を合わせるかのアンカー指定

Anchor U .anchoru ↔️
– U 軸方向のアンカー位置(左端・中央・右端)
– 中心配置以外を取りたい UI レイアウトで使用

Anchor V .anchorv ↕️
– V 軸方向のアンカー位置(下端・中央・上端)
– 円弧を画面底面に貼り付ける用途などに有効

Transform 🔧

Translate .t ↗️
– 生成ポイントを tx / ty / tz 方向に平行移動
– 後段 Transform POP を省略したい場合に直接設定

Rotate .r 🔁
– X / Y / Z 軸まわりの回転(度数法)
rx / ry / rz で個別軸を指定

Uniform Scale .scale 🔍
– 全軸均等のスケール係数
– Radius と組み合わせて非均等スケールと均等スケールを分けて扱える

Normal .normal 🧭

Normal 属性の生成クラス選択:

  • None: Normal 属性を生成しない(軽量化)
  • 用途: ライティングを使う場合は point / vertex のいずれかで生成

Normal Direction .normaldirection ➡️

法線の方向算出方式

項目 内部名 説明
Default .default デフォルトの法線方向(平面に直交)
Radial .radial 中心から各ポイントへの放射方向
Tangent .tangent 接線方向(Tangent 属性出力を有効化)

Tangent .tangent ↪️

Tangent 属性の所属クラス:

  • None: Tangent 属性を生成しない
  • 用途: Anisotropic シェーディング・髪の毛・布表現で接線情報が必要な場合に生成

Tangent Direction .tangentdirection 🎯

Tangent の算出方式

項目 内部名 説明
Radial .radial 放射方向の接線
Tangent .tangent 円周方向の接線

Texture Coordinates .texture 🖼️

Texture Coordinates の所属クラス:

  • None: UV を生成しない
  • 用途: テクスチャマッピング時は vertex / point から選択

Common Page 🔧

Bypass .bypass 🚫

POP の処理をスキップして入力をパススルーする設定:

  • オン: 最初の入力 (input1) をそのまま出力にパススルー、POP 内部の処理を無効化
  • 用途: デバッグ時に特定 POP の効果を一時的に外して比較する際に使用

Free Extra GPU Memory .freeextragpumem 🧠

蓄積した GPU メモリの解放:

  • Free Extra GPU Memory パルス: 出力ポイント数が増減を繰り返した際に確保されたままの GPU メモリを明示的に解放するパルスパラメータ
  • 用途: 大規模パーティクル系で出力サイズが大きく変動した後、未使用メモリを返却して VRAM を節約

Delete Input Attributes .delinputattrs 🗑️

出力属性の絞り込みパターン:

  • Delete Input Attributes パターン: 出力に残したい属性名のパターン (例: P N Cd) を指定。指定外の属性は破棄される
  • 用途: 下流で不要な属性を切り落として分岐ブランチを軽量化、メモリ・帯域を節約

Parameter Color Space .parmcolorspace 🎨

色パラメータの色空間を解釈・Working Color Space に変換する方式

項目 内部名 説明
sRGB .srgb 標準 sRGB ガンマ
sRGB – Linear .srgblinear リニア化された sRGB
Rec.601 (NTSC) .rec601 NTSC SD ビデオ用色空間
Rec.709 .rec709 HD ビデオ用色空間
Rec.2020 .rec2020 UHD / 4K HDR ビデオ用色空間
DCI-P3 .dcip3 デジタルシネマ用色空間
DCI-P3 (D60) .dcip3d60 D60 白色点の DCI-P3
Display-P3 (D65) .displayp3 Apple Display P3 (D65 白色点)
ACES2065-1 .aces2065 ACES 標準 (AP0 プライマリ)
ACEScg .acescg ACES CG 用 (AP1 プライマリ)
Passthrough .passthrough 色空間変換せず値をそのまま使用

Parameter Reference White .parmreferencewhite

色パラメータの基準白色点 (Reference White) の扱い

項目 内部名 説明
Default For Color Space .default 選択した色空間のデフォルト基準白を使用
Use Parent Panel .useparent 親パネルの基準白設定を継承
Standard (SDR) .sdr SDR (標準ダイナミックレンジ) 基準白
High (HDR) .hdr HDR (ハイダイナミックレンジ) 基準白
UI .ui UI 設定値を使用

実践アイデア 💡

Example 1: 扇形ゲージ表示の生成 🎯

Circle POP (Arc Angles, Connectivity = Surface) → Render TOP → Render TOP

Arc Angles を CHOP 等で動的に駆動すると、UI の進捗ゲージ・スコープ表示・レーダーチャートのスイープ表示などをジオメトリレベルで実現できる。

  1. Circle POP の Connectivity を Surface に設定
  2. Arc Angles の beginangle=0endangle を入力値(0-360)にバインド
  3. Render TOP で UI に合わせたカラーリングを設定し、Render TOP に出力

Example 2: 多角形プリミティブの生成 🔷

Circle POP (Divisions = 6, Closed = On) → Transform POP → Render TOP

Divisions を小さい整数値に設定すると円ではなく多角形となるため、簡易な六角タイル・八角ボタン UI パーツの生成にそのまま流用できる。

  • Circle POP の Divisions を 6 または 8 に設定
  • Connectivity を Surface にして閉じた面プリミティブを得る
  • Transform POP で多角形を整列・コピー

関連オペレータ 🔗

類似機能OP 🔍

  • Box POP — 立方体形状のジェネレータ系 POP
  • Particle POP — 動的パーティクル生成

組み合わせ推奨OP 🔄

  • Transform POP — 生成後に並列・整列・スケールを適用
  • Render TOP — Geometry COMP 経由で円ジオメトリを 2D 画像として描画
  • Geometry COMP — Circle POP の出力をシーングラフに組み込む

前処理・後処理POP 🎯


Info POP情報 📊

Circle POPは Info CHOP / Info DAT による詳細情報取得に対応しています。

POP固有情報 🧩

  • num_points: 生成された円周ポイント数 (Divisions に対応)
  • num_prims: 生成されたプリミティブ数 (Connectivity に依存)
  • num_vertices: 生成された頂点数
  • bound_min: 出力ジオメトリのバウンディングボックス最小値
  • bound_max: 出力ジオメトリのバウンディングボックス最大値

汎用オペレータ情報 🔄

  • total_cooks: プロセス開始からのクック回数
  • cook_time: 最後のクック時間(ミリ秒)
  • cook_frame: 最後にクックされたフレーム番号
  • warnings: 警告数
  • errors: エラー数

トラブルシューティング ⚠️

よくある問題と解決策 🔧

❌ Problem: 円がカクカクしている / ジャギーが目立つ
✅ Solution:

  • Divisions を 64 以上にして円の滑らかさを上げる
  • Render TOP の MSAA / アンチエイリアスを有効化
  • ConnectivitySurface に切替えてエッジ補間を任せる

❌ Problem: Arc Angles を変更しても弧が閉じてしまう
✅ Solution:

  • Closed をオフにして最後と最初の頂点を接続しない設定にする
  • endangle を 360 未満に設定(360 は完全円扱い)
  • Connectivity を Line Strip に切替えて開いた線として描画

❌ Problem: Tangent / Normal が期待方向と異なる
✅ Solution:

  • Normal DirectionRadial / Tangent から目的に合うものを選択
  • Tangent Direction を再確認 (Radial か Tangent)
  • 後段で Attribute POP を入れて Normal / Tangent を再生成する

参考資料 📚

公式リソース 📖

コミュニティ 💬

この記事はLLMと共に内容を執筆、更新しています。
最新バージョンとの項目差異など、情報の不一致を見つけた心優しい方はXもしくはInsta、メールなどよりサイト管理者までご連絡ください😎


まる。

お仕事のご依頼はDM又はメールにて。
━━━━━━━━━━━━━━━━━
Python/Touchdesigner/M5Stackをこよなく愛すフルスタックエンジニア。
専門は生理心理学、趣味はヨガやサウナ、EMS電気風呂などヘルスケア全般。
脳波や筋電、心拍を中心とした生体情報のセンシング&インタラクティブアートづくりがライフワーク。

普段はワントゥーテンという会社で空間演出エンジニアをしています。
リファラル採用お繋ぎできますので、我こそはという尖った方は経歴と希望職種添えてDMください(エンジニア以外、営業職等もOK)。
ご飯行きましょう。

↓日常垢
Instagram:@malmal0v0

まる。をフォローする
その他の記事はこちら
Math Combine POP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
ZED Select TOP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
ZED POP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
Window COMP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】
Widget COMP 完全ガイド | 使い方・パラメータ解説【TouchDesigner】

タイトルとURLをコピーしました