
概要 📖 – USD/FBXから取出す
Import Select POPは、親 USD/FBX COMP に取込済みのジオメトリ階層から、Geo Path で指定したオブジェクトをアニメーション付きで取出す POPです。USD COMP / FBX COMP が読込済みのアセット階層から、特定のジオメトリパスを選択して POP ストリームへ流し込めます。Play Mode (Sequential / Specify Index) と Trim / Cue / Extend を組合せれば、アニメーションの順次再生、外部 CHOP からのタイムラインスクラブ、区間ループや反転再生まで柔軟に制御できます。
主な用途 🎯
- 親 USD COMP / FBX COMP に取込済みのジオメトリ階層から個別オブジェクトを抽出
- Geo Path 指定によるシーン内の特定モデル・キャラクターの選択取出
- Blend Shape 名を指定したモーフターゲット (表情・形状変形) 制御
- 親 COMP アニメーションコントロールとの同期再生 (Use Parent Animation)
- Specify Index モードによる外部 CHOP からのタイムラインスクラブ・部分再生
- Trim / Cue / Extend Left / Extend Right を組合せた区間ループ・反転再生
データフロー 🔄
親 USD/FBX COMP (取込済みジオメトリ階層)
↓
Import Select POP (Geo Path 指定 + 再生制御)
↓
出力: ポイント・頂点・プリミティブ属性を持つ POP
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
General Page 📋
親COMP参照とパス 📂
Import Parent .parent 🎯
– Import Parent (取込親 COMP) — 取込元となる USD COMP / FBX COMP のパスを指定
– 未指定の場合、Import Select POP は自身のパスを上に遡り、最初に見つかった import 親 COMP を自動的に検索対象とする
Geo Path .geometry 🛤️
– Geo Path (ジオメトリパス) — 取込元ファイル内のどのジオメトリオブジェクトを選択するかを指定するパス文字列
– 例: /root/character/body のようにファイル内階層を辿ったパスで部分選択する
– 親 COMP が取込んだ全オブジェクトの中から、この POP で扱うジオメトリを 1 つ特定する
Reload .reload 🔄
– Reload (再読込) — ジオメトリを再 import してロードし直すパルスパラメータ
– 親 COMP のソースファイルを差し替えた後にこのパルスを発火すると最新内容が POP に反映される
Blend Shape・接線 🎭
Blend Shape .blendshape 🎭
– Blend Shape (ブレンドシェイプ) — 取込ファイル内に定義されたブレンドシェイプ (モーフターゲット) の名前を指定
– 指定したブレンドシェイプが読込まれ、表情変化やキャラクターの形状変形に利用できる
– 何も指定しなければベースのジオメトリのみが取出される
Compute Tangents .comptang 📐
– Compute Tangents (接線計算) — 取込ジオメトリに対し接線ベクトルを計算するかどうかのトグル
– ノーマルマップを使うマテリアルでは接線情報が必要なため、PBR レンダリング時はオンにする
– 単純な拡散シェーディングのみで使う場合はオフでクック負荷を軽減できる
Playback Page ▶️
親アニメと速度 🎚️
Use Parent Animation .useparentanim 🔗
– Use Parent Animation (親アニメーション使用) — 親 COMP 側のアニメーションコントロールに従って再生するかどうか
– オンにすると親 USD COMP / FBX COMP のタイムラインに同期、オフにするとこの POP 単独の Play / Index / Cue で制御する
Shift Animation Start .shiftanimationstart ↩️
– Shift Animation Start (開始シフト) — 取込ファイルのアニメーション開始時刻を 0 にシフトして再生するかどうかのトグル
– ファイル側で開始時刻が中途半端 (例: フレーム 1001 開始) でも TouchDesigner 側の時刻 0 を起点に揃えて再生できる
Sample Rate .samplerate 🔢
– Sample Rate (サンプルレート) — Sample Rate Mode = Custom 時のサンプルレート (Hz)
– 60 にすれば 60fps 駆動、24 にすれば映画系の 24fps 駆動として再生
Initialize .initialize 🟡
– Initialize (初期化) — アニメーションを初期状態 (開始位置) に戻すパルスパラメータ
– ループ開始時や再生リセット時にトリガーする
Start .start 🟢
– Start (開始) — アニメーションシーケンスの再生開始パルス
– Initialize の直後に発火させると先頭から再生開始できる
Play .play ▶️
– Play (再生) — 再生のオン / オフ。オフでアニメーションを停止
– Play Mode = Sequential と組合せて使う
Speed .speed ⚡
– Speed (速度) — 再生速度の倍率。1.0 が等速、2.0 で 2 倍速、0.5 でスローモーション
– 負値で逆再生も可能
Sample Rate Mode .sampleratemode 📐
サンプルレートの源を決定するモード
| 項目 | 内部名 | 説明 |
|---|---|---|
| Custom | .custom |
Sample Rate パラメータで指定したカスタムレート (Hz) を使用 |
Play Mode .playmode 🎮
アニメーション再生の制御方式 (インデックス指定 / シーケンシャル再生)
| 項目 | 内部名 | 説明 |
|---|---|---|
| Specify Index | .specifyindex |
Index パラメータの値で直接アニメーション位置を指定。外部 CHOP / DAT で Index を駆動してスクラブ・同期再生する用途に最適 |
| Sequential | .sequential |
Play / Speed / Start に従って時間経過で進行する標準的な再生モード。Cue / Trim 機能はこのモードでのみ有効 |
Cue・Index 📍
Cue .cue 📌
– Cue (キュー) — オンにすると Cue Point の位置にジャンプし、そこで停止保持するトグル
– Play Mode = Sequential のときのみ有効
Cue Point .cuepoint 🎯
– Cue Point (キュー位置) — Cue でジャンプする先のアニメーション位置
– 単位は右側の Cue Point Unit で Index / Frames / Seconds / Fraction から選択
Index .index 🔢
– Index (インデックス) — Play Mode = Specify Index 時のアニメーション位置
– 単位は右側の Index Unit で Index / Frames / Seconds / Fraction から選択
– 外部 CHOP の値を Index にエクスポートすればタイムラインスクラブが可能
Trim 設定 ✂️
Trim .trim 🔘
– Trim (トリム) — オンにすると Trim Start / Trim End で再生範囲を制限
– アニメーション全長の一部だけをループ・部分再生したい場合に使用
Trim Start .tstart ⏮️
– Trim Start (開始位置) — トリム後の再生開始位置 (この時刻が新しい時刻 0 として扱われる)
– 単位は右側の Trim Start Unit で Index / Frames / Seconds / Fraction から選択
Trim End .tend ⏭️
– Trim End (終了位置) — トリム後の再生終了位置
– 単位は右側の Trim End Unit で Index / Frames / Seconds / Fraction から選択
Extend Left .textendleft ◀️
Trim Start より前の時刻が参照されたときの振る舞い
| 項目 | 内部名 | 説明 |
|---|---|---|
| Hold | .hold |
Trim Start の値を保持し続ける (静止) |
| Cycle | .cycle |
Trim 範囲を周期的にループ。境界で Trim End から Trim Start へジャンプ |
| Mirror | .mirror |
Trim 範囲を反転再生してミラーリング。境界で正再生 / 逆再生が交互に切替わる |
Extend Right .textendright ▶️
Trim End より後の時刻が参照されたときの振る舞い
| 項目 | 内部名 | 説明 |
|---|---|---|
| Hold | .hold |
Trim End の値を保持し続ける (静止) |
| Cycle | .cycle |
Trim 範囲を周期的にループ。境界で Trim Start から Trim End へジャンプ |
| Mirror | .mirror |
Trim 範囲を反転再生してミラーリング。境界で正再生 / 逆再生が交互に切替わる |
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) を指定。指定外の属性は破棄される - 用途: 下流で不要な属性を切り落として分岐ブランチを軽量化、メモリ・帯域を節約
実践アイデア 💡
Example 1: USDキャラの選択描画 🏗️
USD COMP (.usd / .usda) → Import Select POP (Geo Path 指定) → Render TOP / Geometry COMP
USD COMP に読込ませた大規模シーン (.usd / .usda) の中から、Import Select POP で特定のキャラクターやプロップだけを Geo Path で取出す典型例。シーン全体を 1 つの POP に展開すると重いため、必要なオブジェクトのみを個別 POP として下流に流し、Render TOP でマテリアル付きでレンダリングする。
- USD COMP に
.usd/.usdaファイルを読込ませる - Import Select POP の
Import Parentに親 USD COMP のパスを指定 (空欄なら上位階層を自動探索) Geo Pathに取出したいオブジェクトのパス (例:/root/character/body) を入力Compute Tangentsをオンにして PBR マテリアル用の接線情報を生成- 下流の Render TOP でマテリアル付き (色・質感) を付与して最終描画
Example 2: FBXを親COMPと同期 🎞️
FBX COMP (.fbx, アニメーション付) → Import Select POP (Use Parent Animation オン) → Transform POP → Render TOP
Maya や Blender から書き出した FBX キャラクターアニメーションを FBX COMP に読込ませ、Import Select POP の Use Parent Animation をオンにして親 COMP のタイムラインに同期再生する例。Use Parent Animation をオフにすれば、この POP 単独の Play / Index / Cue でアニメーションを個別制御できる。
- FBX COMP にアニメーション付きの
.fbxファイルを読込ませる - Import Select POP の
Import Parentに FBX COMP のパスを指定 Geo Pathで再生したいスケルタル/メッシュオブジェクトのパスを選択Use Parent Animationをオンにして親 COMP のタイムラインに従って再生- 下流の Transform POP / Render TOP で位置調整・着色を施す
Example 3: 外部CHOPでスクラブ 🕹️
LFO CHOP / Audio Spectrum CHOP → export → Import Select POP (Play Mode=Specify Index, Index) → 下流 POP
Use Parent Animation をオフにし、Play Mode を Specify Index に切替えて、Index パラメータに外部 CHOP の値をエクスポートする例。これにより、音楽の BPM や UI スライダーの値に合わせて取込ジオメトリのアニメーションをスクラブできる。Index Unit を Fraction (0〜1) にすると正規化済みの値で扱いやすい。
Use Parent Animationをオフに切替Play Mode= Specify Index を選択Index UnitをFractionに設定 (0=先頭 / 1=末尾の正規化制御)- LFO CHOP / Audio Spectrum CHOP / Slider COMP 等から 0〜1 の信号を生成
- 右クリック → Export CHOP で生成した CHOP 値を
Indexパラメータへバインド
関連オペレータ 🔗
類似機能OP 🔍
- Alembic In POP — Alembic (.abc) ファイルを直接読込む source 系 POP
- File In POP — 汎用ジオメトリファイルを POP として読込む source 系 POP
組み合わせ推奨OP 🔄
- Transform POP — 取込ジオメトリの位置・回転・スケールを下流で調整
- Math POP — 取込頂点属性 (位置 / 法線等) の正規化・スケーリング
- Attribute POP — 取込属性のリネーム・削除・スキーマ整形
- Skin Deform POP — Blend Shape やスケルタル変形の下流処理
- Cache POP — 取込ジオメトリを GPU キャッシュに保存し再利用
前処理・後処理POP 🎯
Info POP情報 📊
Import Select POP は Info CHOP / Info DAT による詳細情報取得に対応しています。
POP固有情報 ✨
num_verts: POP に含まれる頂点 (vertex) 数num_points: POP に含まれるポイント数num_prims: POP に含まれるプリミティブ数
汎用オペレータ情報 🔄
total_cooks: プロセス開始からのクック回数cook_time: 最後のクック時間 (ミリ秒)cook_frame: 最後にクックされたフレーム番号cook_abs_frame: 最後にクックされた絶対フレーム番号 (アプリケーション起動からの累積)cook_start_time: 最後のクック開始時刻 (ミリ秒)cook_end_time: 最後のクック終了時刻 (ミリ秒)cooked_this_frame: 現フレームでクックされたか (0 / 1)warnings: 警告数errors: エラー数
ジオメトリ・属性情報 🧬
num_points: 取込ジオメトリの出力ポイント数num_point_attribs: 出力 POP の point 属性数 (位置 P / 法線 N / カラー Cd 等の合計)num_vertex_attribs: 出力 POP の vertex 属性数 (UV 等の頂点単位属性数)num_prim_attribs: 出力 POP の primitive 属性数num_prims: 出力プリミティブ数 (取込ジオメトリのメッシュ / カーブ数)
トラブルシューティング ⚠️
よくある問題と解決策 🔧
❌ Problem: ジオメトリが何も出力されない
✅ Solution:
Import Parentに親 USD COMP / FBX COMP のパスが指定されているか確認 (空欄で自動検索が外れている場合あり)Geo Pathがファイル内の実在オブジェクトを指しているか親 COMP のコンテンツ一覧で確認Reloadパルスを発火してジオメトリを再読込- 親 COMP 側でファイルが正常に読込まれているか先にチェック
❌ Problem: アニメーションが再生されない / 静止したまま
✅ Solution:
Use Parent Animationのオン / オフを取り違えていないか確認 (オンなら親 COMP のタイムライン依存)Play Modeが Sequential になっているか確認 (Specify Index では Play / Speed は無視される)Playがオン、Startパルスが発火済みか確認- ファイル側のジオメトリがアニメーション付きで書き出されているか DCC 側のエクスポート設定を再確認
❌ Problem: Blend Shape が反映されない
✅ Solution:
Blend Shapeに指定した名前が取込ファイル内に実在するかを再確認 (大文字小文字や階層プレフィックスに注意)- 親 USD COMP / FBX COMP がブレンドシェイプ情報を含めて書き出されているか確認
- 下流の Skin Deform POP を併用して変形ウェイトを適用
❌ Problem: ノーマルマップが正しく見えない / 法線が滑らかでない
✅ Solution:
Compute Tangentsをオンにして接線ベクトルを生成 (PBR マテリアルで必須)- Attribute POP で法線属性 N が出力に残っているか確認
- 下流の Render TOP のノーマルマップ設定で接線基準が正しく参照されているか確認
❌ Problem: クック時間が長くフレーム落ちする
✅ Solution:
Compute Tangentsが不要ならオフにしてクック負荷を軽減- Common Page の
Delete Input Attributesで下流に渡す属性を最小限に絞り、VRAM・帯域を節約 - Cache POP を下流に挟んでフレーム毎の再計算を抑制
Geo Pathをシーン全体ではなく必要な部分のみに絞る
参考資料 📚
その他 🔗
- TouchDesigner Wiki — POP 概要
- TouchDesigner Wiki — Category:POPs
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group
公式リソース 📖
- TouchDesigner公式ドキュメント – Import Select POP
- USD COMP – 親 import COMP (USD 形式) の解説
- FBX COMP – 親 import COMP (FBX 形式) の解説
- Attribute – TouchDesigner 属性概念ページ

