
概要 📖 – 円・円弧形状の点群生成
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 属性
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
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 の進捗ゲージ・スコープ表示・レーダーチャートのスイープ表示などをジオメトリレベルで実現できる。
- Circle POP の Connectivity を
Surfaceに設定 - Arc Angles の
beginangle=0、endangleを入力値(0-360)にバインド - 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 🎯
- 前処理: Particle POP、Box POP
- 後処理: Transform POP、Attribute POP、Blend 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 / アンチエイリアスを有効化
ConnectivityをSurfaceに切替えてエッジ補間を任せる
❌ Problem: Arc Angles を変更しても弧が閉じてしまう
✅ Solution:
Closedをオフにして最後と最初の頂点を接続しない設定にするendangleを 360 未満に設定(360 は完全円扱い)- Connectivity を
Line Stripに切替えて開いた線として描画
❌ Problem: Tangent / Normal が期待方向と異なる
✅ Solution:
Normal DirectionをRadial/Tangentから目的に合うものを選択Tangent Directionを再確認 (Radial か Tangent)- 後段で Attribute POP を入れて Normal / Tangent を再生成する


