
概要 📖 – BlackTrax モーショントラッキングデータの受信
BlackTrax CHOPは、BlackTrax モーショントラッキングシステムからのビーコン位置・回転・速度・加速度データを UDP/Multicast 経由で受信する CHOPです。ライブパフォーマンスや舞台演出での出演者位置追跡において、Mapping Table でビーコン ID をチャンネル名に紐付けながら一括取得します。
主な用途 🎯
- BlackTrax トラッキングシステムからのリアルタイムビーコン位置受信
- ライブパフォーマンス・舞台演出での出演者位置トラッキング
- ビーコン位置・回転・速度・加速度チャンネルの一括取得
- Mapping Table によるビーコン ID とチャンネル名の対応付け
- Multicast / UDP メッセージング両対応の柔軟なネットワーク受信
データフロー 🔄
入力: BlackTrax サーバーからの UDP/Multicast パケット
↓
ネットワーク受信 (Active/Port/Protocol)
↓
Mapping Table によるビーコン ID 解決
↓
Centroid / Velocity / Acceleration / LEDs チャンネル展開
↓
出力: ビーコン毎のトラッキングデータ
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
BlackTrax Page 📡
Active .active 🟢
ネットワーク受信の有効/無効:
- Active: オンの間ネットワークポートに送られた情報を受信、オフの間は更新されない
Port .port 🔌
パケット受信ポート:
- Port: パケットを受け付けるポート番号
Protocol .protocol 🌐
ネットワークプロトコル選択
| 項目 | 内部名 | 説明 |
|---|---|---|
| Messaging (UDP) | .msging |
UDP ユニキャストでパケット受信 |
| Multi-Cast Messaging (UDP) | .multicastmsging |
UDP マルチキャストでパケット受信 |
Network Address .netaddress 📍
Multicast 受信アドレス:
- Network Address: Multicast 使用時にパケットを listen するアドレス
Sample Rate .samplerate ⏲️
CHOP サンプルレート:
- Sample Rate: この CHOP のサンプルレートを設定
Output Format .outputformat 📦
CHOP チャンネルのフォーマット (ビーコン数の決定方法)
| 項目 | 内部名 | 説明 |
|---|---|---|
| From Mapping Table | .fromtable |
Mapping Table の各行ごとにビーコンを 1 つずつ追加 |
| From Max Beacons | .frombeacons |
Max Beacons パラメータで指定した数のビーコンを追加 |
Max Beacons .maxbeacons 🔢
Max Beacons モード時のビーコン数:
- Max Beacons: From Max Beacons モード時に CHOP に追加するビーコン数
チャンネル種類トグル 🎚️
出力チャンネルとして含める情報の種類
Centroid .centroid 🎯
– 有効時、ビーコンの位置 (translation) と回転 (rotation) のチャンネルを追加
– 出演者やオブジェクトの空間内座標を取得する基本チャンネル
Velocity .velocity 💨
– 有効時、ビーコンの速度チャンネルを追加
– 移動量の差分を取らずに速度値を直接取得可能
Acceleration .acceleration 🚀
– 有効時、ビーコンの加速度チャンネルを追加
– ジェスチャー強度や急発進の検出に使用
LEDs .leds 💡
– 有効時、ビーコン内の各 LED の位置チャンネルを追加
– ビーコン形状や向きを LED 単位で参照したい場合に使用
Reset Channels .reset 🧹
保存ビーコン・古いデータの継続クリア:
- Reset Channels: オンの間、保存されたビーコンと古いデータをクリアし続ける
Reset Pulse .resetpulse ⚡
保存ビーコン・古いデータの即時クリア:
- Reset Pulse: 瞬時に保存されたビーコンと古いデータをクリア
Mapping Table .mappingtable 🗂️
ビーコン ID → チャンネル名の対応 DAT テーブル:
- Mapping Table: ビーコン ID を CHOP チャンネル (beacon0, beacon1, …) にマップする DAT テーブル。1 行目が beacon0、2 行目が beacon1 … と対応。ビーコン ID は BlackTrax アプリ内で指定された一意の非負整数
Common Page 🔧
Time Slice .timeslice ⏱️
Time Slice モードの強制設定:
- オン: チャンネルを「タイムスライス」モードに強制
- タイムスライス: 前回のクックフレームから現在のクックフレームまでの時間
Scope .scope 🎯
影響を受けるチャンネルの絞り込み:
- Scope 文字列: 影響を受けるチャンネルを指定する文字列
- パターンマッチング:
*や[1-10]等のパターンが使用可能
Sample Rate Match .srselect ⚡
複数の入力 CHOP のサンプルレートが異なる場合の処理方法
| 項目 | 内部名 | 説明 |
|---|---|---|
| Resample At First Input’s Rate | .first |
最初の入力のレートで他をリサンプル |
| Resample At Maximum Rate | .max |
最高サンプルレートでリサンプル |
| Resample At Minimum Rate | .min |
最低サンプルレートでリサンプル |
| Error If Rates Differ | .err |
レート不一致でエラー |
Export Method .exportmethod 📤
CHOP チャンネルをパラメータに接続する方法
| 項目 | 内部名 | 説明 |
|---|---|---|
| DAT Table by Index | .datindex |
DAT テーブルのインデックスでチャンネルとパラメータを対応付け |
| DAT Table by Name | .datname |
DAT テーブルの行名でチャンネルとパラメータを対応付け |
| Channel Name is Path:Parameter | .autoname |
チャンネル名を `path:parameter` 形式で記述し直接対応付け |
Export Root .autoexportroot 🌳
Channel Name is Path:Parameter モード時のパス基点:
- Export Root パス:
autonameモードでチャンネル名のパス部分を相対化する基点 OP のパス
Export Table .exporttable 📋
DAT Table エクスポート方式での参照 DAT:
- Export Table DAT:
datindex/datnameモード時に参照する DAT のパス
Rename from .commonrenamefrom 🔤
リネーム対象チャンネルのパターン:
- Rename from パターン: リネーム対象とするチャンネル名のパターンマッチング文字列
Rename to .commonrenameto 🔁
リネーム後の置換パターン:
- Rename to パターン: Rename from にマッチしたチャンネルの新しい名前パターン (デフォルトはリネームなし)
実践アイデア 💡
Example 1: 舞台上の出演者ビーコン位置を取得 🎭
BlackTrax サーバー → BlackTrax CHOP (Centroid 有効) → Math CHOP (Range 変換) → 照明・映像コントロール
舞台演出で出演者にビーコンを装着し、その位置をリアルタイムで照明や映像にマッピングする基本構成です。BlackTrax CHOP で受信した位置チャンネルを座標系に合わせてスケーリングします。
- BlackTrax サーバー側でビーコン ID を確定し、Mapping Table DAT に行を追加
- BlackTrax CHOP の Port を BlackTrax 送信側の設定に合わせ、Centroid を ON
- 出力された tx/ty/tz チャンネルを Math CHOP で舞台座標系に Range 変換
- 変換後の値を照明 DMX や映像レンダリングカメラへ Export
Example 2: 速度・加速度ベースのインタラクティブ演出 💃
BlackTrax CHOP (Velocity + Acceleration 有効) → Filter CHOP → Logic CHOP → エフェクト発火
出演者の動きの速さや急加速をトリガーにエフェクトを発火させる構成です。Velocity / Acceleration チャンネルを直接取得できるので差分計算は不要です。
- BlackTrax CHOP で Velocity と Acceleration を ON にして速度・加速度チャンネルを追加
- Filter CHOP でジッタを除去しスムージング
- Logic CHOP で閾値判定 (例: 加速度 > 2.0 で急発進)
- Trigger CHOP でエフェクトやサウンドのキューを発火
Example 3: Multicast による複数 PC での同時受信 📡
BlackTrax サーバー (Multicast) → 複数 PC の BlackTrax CHOP → 各 PC で個別演算
複数 PC でトラッキングデータを共有して別々の演出を同時実行する構成です。Protocol を Multi-Cast Messaging に切り替えるだけで全 PC が同じデータを受信できます。
- BlackTrax サーバー側を Multicast 送信モードに切替
- 各 PC の BlackTrax CHOP で Protocol を「Multi-Cast Messaging (UDP)」に設定
- Network Address に Multicast グループアドレスを入力 (例: 239.x.x.x 系)
- 各 PC の BlackTrax CHOP が同じビーコンデータを受信して並列処理
関連オペレータ 🔗
類似機能OP 🔍
- OSC In CHOP — 汎用 OSC プロトコル経由のリアルタイム制御信号受信
- OpenVR CHOP — VR ヘッドセット・コントローラの位置トラッキング
- Kinect CHOP — Kinect センサーによる骨格・関節位置トラッキング
組み合わせ推奨OP 🔄
- Math CHOP — 受信した位置チャンネルを舞台座標系に Range 変換
- Filter CHOP — トラッキングジッタの平滑化
- Logic CHOP — 速度・加速度の閾値判定によるトリガー生成
- Trigger CHOP — エフェクトやサウンドキューのエンベロープ起動
- Null CHOP — 下流参照を 1 箇所に集約してパッチ整理
前処理・後処理CHOP 🎯
Info CHOP情報 📊
BlackTrax CHOPは Info CHOP による詳細情報取得に対応しています。
CHOP固有情報 🎚️
start: CHOPインターバルの開始(サンプル単位)length: CHOPのサンプル数sample_rate: フレーム毎秒のサンプルレートnum_channels: CHOPのチャンネル数time_slice: タイムスライス有効時は1、無効時は0export_sernum: Export接続の更新回数
汎用オペレータ情報 🔄
total_cooks: プロセス開始からのクック回数cook_time: 最後のクック時間(ミリ秒)cook_frame: 最後にクックされたフレーム番号warnings: 警告数errors: エラー数
トラブルシューティング ⚠️
よくある問題と解決策 🔧
❌ Problem: ビーコンデータが受信できない
✅ Solution:
- Active が ON になっているか確認 (オフではポート受信が停止)
- Port が BlackTrax サーバー側送信ポートと一致しているか確認
- Multicast 使用時は Network Address が送信側グループアドレスと一致しているか確認
- ファイアウォール・ネットワーク経路で UDP パケットが遮断されていないか確認
❌ Problem: ビーコン ID とチャンネル名の対応がおかしい
✅ Solution:
- Output Format が「From Mapping Table」になっていることを確認
- Mapping Table DAT の行順序がそのまま beacon0, beacon1, … に対応するため意図した順序か確認
- BlackTrax アプリ内で確定したビーコン ID と Mapping Table の ID が一致しているか確認
❌ Problem: 古いビーコンデータが残り続ける
✅ Solution:
- Reset Pulse をパルスして即時クリア
- 継続的に古いデータをクリアしたい場合は Reset Channels を ON
- 再送が断続的な場合は後段の Filter CHOP や Hold CHOP で stale を吸収
❌ Problem: 速度・加速度チャンネルが出てこない
✅ Solution:
- Velocity / Acceleration トグルが ON になっているか確認 (デフォルトオフの場合あり)
- BlackTrax 送信側で速度・加速度の送信設定が有効になっているか確認
- 出力フォーマットがビーコン数を 0 にしていないか (From Max Beacons モードで Max Beacons が 0 になっているケース)
参考資料 📚
その他 🔗
- TouchDesigner Wiki — CHOP 概要
- TouchDesigner Wiki — Category:CHOPs
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group

