
概要 📖 – 他プロジェクトから受信
Touch In DATは、別の TouchDesigner からネットワーク経由で送られたデータを受信し、テーブルやテキストとして出力する DATです。送信側の Touch Out DAT と対で使い、通信プロトコル・宛先アドレス・ポート番号を揃えることで、マシンをまたいだプロジェクト間のデータ連携を実現します。
主な用途 🎯
- 別 TouchDesigner からのデータ受信(Touch Out DAT が送信したテーブルやテキストをネットワーク経由で受け取る)
- 複数マシン間でのプロジェクト連携(演出用とセンサー処理用などマシンを分けた構成でデータを共有)
- プロトコルを選んだネットワーク受信(信頼性重視の TCP か低遅延の UDP かを用途に応じて切替)
- マルチキャストでの一斉受信(複数の受信側マシンが同じデータを同時に受け取る配信構成)
- 受信内容のテーブル / テキスト出力(受け取った内容をそのまま DAT のテーブルとして後段の処理に渡す)
データフロー 🔄
入力: 送信側からネットワークに流れたデータ(指定プロトコル / アドレス / ポート)
↓
受信処理(待ち受けポートでパケットを取り込み)
↓
出力: 受信したテーブル / テキストの DAT 出力
初心者の方は、以下日本語書籍も手元にあると安心です。

実際の案件事例まで踏み込んで紹介されていて、効率よくスキルアップするなら必携の二冊です!
パラメータ解説 ⚙️
Touch In Page 📋
通信プロトコル .protocol 🔁
Protocol (通信プロトコル) — どの方式でデータを受信するかを選択します。詳細は公式の Network Protocols 解説を参照します。
| 項目 | 内部名 | 説明 |
|---|---|---|
| Streaming (TCP/IP) | .streaming |
TCP/IP による到達保証付きのストリーム受信。確実な配送を優先する場合 |
| Messaging (UDP) | .msging |
UDP によるメッセージ単位の受信。到達保証より低遅延を優先する場合 |
| Multi-Cast Messaging (UDP) | .multicastmsging |
UDP のマルチキャストによる受信。複数の受信側へ同じデータを一斉配信する場合 |
接続と宛先 🌐
Network Address .address 📡Network Address (宛先アドレス) — マルチキャストの場合は待ち受ける対象のマルチキャストアドレスを指定します。
UDT プロトコル使用時はこの欄に接続先サーバーの IP アドレスを指定します。
Port .port 🔌Port (ポート) — パケットを受信するネットワークポート番号を指定します。
送信側 (Touch Out DAT) と同じポート番号に揃える必要があります。
Shared Connection .shared 🔗Shared Connection (接続の共有) — 同じネットワークプロトコルを使う他のネットワーク DAT と接続を共有します。
Active .active ✅Active (受信の有効化) — On の間、この DAT はネットワークポートに送られた情報を受信します。
Off にすると更新が止まり、その間にポートへ送られたデータは失われます。
Common Page 🔧
Language .language 📝
DAT が動作するスクリプト言語の決定方法
| 項目 | 内部名 | 説明 |
|---|---|---|
| Input | .input |
入力 DAT のスクリプト言語を使用 |
| Node | .node |
この DAT 自身のスクリプト言語を使用 |
Edit/View Extension .extension 📄
外部エディタに公開するファイル拡張子の選択
| 項目 | 内部名 | 説明 |
|---|---|---|
| dat | .dat |
汎用的なファイル拡張子 dat を使用 |
| From Language | .language |
DAT のスクリプト言語に応じた拡張子を自動選択 |
| Custom Extension | .custom |
Custom Extension で指定したカスタム拡張子を使用 |
Custom Extension .customext 🔤
Edit/View Extension が Custom Extension のときに適用される拡張子:
- Custom Extension 文字列:
Edit/View Extensionがcustomのときに使用される任意のファイル拡張子
Word Wrap .wordwrap 🔁
ノード表示でのワードラップ (折り返し) の有効化
| 項目 | 内部名 | 説明 |
|---|---|---|
| Input | .input |
入力 DAT の Word Wrap 設定を継承 |
| On | .on |
Word Wrap を有効化 (ノード上の長い行を折り返し表示) |
| Off | .off |
Word Wrap を無効化 (折り返さずそのまま表示) |
実践アイデア 💡
Example 1: 2台間でテーブル共有 📡
送信側 Touch Out DAT → ネットワーク → Touch In DAT → 後段処理
演出用マシンとセンサー処理用マシンを分けた構成で、片方の Touch Out DAT が送ったテーブルをもう片方の Touch In DAT で受信し、マシンをまたいでデータを共有するフロー。
- 送信側の Touch Out DAT と受信側で
Protocolを同じStreaming (TCP/IP)に揃える - 受信側の
Portを送信側と同じ番号に設定する Activeを On にして受信を開始する- 受信したテーブルが Touch In DAT の出力に現れることを確認する
Example 2: マルチキャスト配信 🌐
送信側 Touch Out DAT → マルチキャスト → 複数の Touch In DAT
複数の受信側マシンが同じデータを同時に受け取る配信構成で、Touch In DAT をマルチキャストモードに設定し、1 つの送信から多数の受信を実現するフロー。
ProtocolをMulti-Cast Messaging (UDP)に設定Network Addressに待ち受けるマルチキャストアドレスを指定- 各受信側マシンで
Portを送信側と揃えてActiveを On にする
Example 3: 受信内容を解析 🔣
Touch In DAT → DAT Execute DAT → Python 処理
受信したテーブルの行追加をきっかけに処理を走らせる構成で、Touch In DAT の出力変化を DAT Execute DAT で監視し、受信ごとに Python で内容を解析するフロー。
Protocol/Portを送信側に合わせて受信を確立する- DAT Execute DAT で Touch In DAT の行変化を監視する
- コールバック内で受信内容を読み取り、後段の処理へ反映する
関連オペレータ 🔗
類似機能OP 🔍
- Touch In CHOP — テーブルではなくチャンネルデータを別 TouchDesigner から受信する版
- OSC In DAT — OSC メッセージをテーブルとして受信する版 (汎用機器との連携向き)
- UDP In DAT — 汎用 UDP パケットを受信する版
- TCP/IP DAT — 汎用の TCP 接続で双方向にデータを送受信する版
組み合わせ推奨OP 🔄
- Touch Out DAT — 送信側として対で使う定番ペア (プロトコル / ポートを揃える)
- DAT Execute DAT — 受信による行変化をトリガーに Python を発火させる
- Convert DAT — 受信したテキストを区切り文字でテーブルに変換して解析
- Table DAT — 受信結果を保持・整形するテーブルとして管理
前処理・後処理DAT 🎯
- 前処理: Touch Out DAT、Table DAT
- 後処理: Convert DAT、Select DAT、Null DAT
Info DAT情報 📊
Touch In DAT は Info DAT による詳細情報取得に対応しています (num_rows / num_cols / total_cooks / cook_time 等の共通 DAT Info チャンネルを参照可能)。
DAT 固有情報 📋
num_rows: DAT の行数num_cols: DAT の列数type: DAT の型 (table / text)is_table: テーブル形式の場合 1、テキスト形式の場合 0
汎用オペレータ情報 🔄
total_cooks: プロセス開始からのクック回数cook_time: 最後のクック時間 (ミリ秒)cook_frame: 最後にクックされたフレーム番号warnings: 警告数errors: エラー数
トラブルシューティング ⚠️
よくある問題と解決策 🔧
❌ Problem: データが受信できない・テーブルが空のまま
✅ Solution:
Activeパラメータが On になっているか確認- 送信側 (Touch Out DAT) と
ProtocolおよびPortが一致しているか確認 - ファイアウォールが該当ポートをブロックしていないか確認 (受信側マシンの設定も含む)
❌ Problem: マルチキャストで受信できない
✅ Solution:
Protocolが送受信ともMulti-Cast Messaging (UDP)になっているか確認Network Addressに正しいマルチキャストアドレスを指定しているか確認- ルーターやスイッチがマルチキャストを通す設定になっているか確認
❌ Problem: 受信が途中で止まる・取りこぼす
✅ Solution:
- 受信を止めた覚えがないか
Activeの状態を確認 (Off の間のデータは失われる) - 到達保証が必要なら
ProtocolをStreaming (TCP/IP)に変更する - 送信側と受信側のネットワーク経路 (同一サブネット / VLAN) を見直す
参考資料 📚
その他 🔗
- TouchDesigner Wiki — DAT 概要
- TouchDesigner Wiki — Category:DATs
- TouchDesigner Wiki ホーム
- TouchDesigner 公式 Forum
- Facebook — TouchDesigner Help Group

