コンテンツにスキップ

OSCアドレス仕様

このページは、LiTouchが送信するOSCメッセージのアドレスと引数のリファレンスです。受信側ソフト(TouchDesigner / Max / Pure Data など)でアドレスを設計するときに参照してください。実際の送信ON/OFFや送信先設定は メッセージ種別OSC送信先の設定 を参照してください。

各メッセージのアドレスは、ゾーンの osc_prefix を先頭に付けて組み立てられます。以下では osc_prefix{prefix}、Player IDを {id} と表記します。

たとえばゾーンの osc_prefix/floor/a、Player IDが 1 のとき、位置メッセージのアドレスは次のようになります。

/floor/a/player/1/position

{prefix} はゾーンごとに設定できるため、複数ゾーンを別アドレス空間で受信できます。osc_prefix の設定方法は キャンバスゾーン を参照してください。

Planeまたはゾーンが Playerモード のときに送られるメッセージです。各メッセージの送信ON/OFFは メッセージ種別 で個別に切り替えられます。

アドレス引数意味
{prefix}/player/count整数ゾーン内のプレイヤー数
{prefix}/player/{id}/positionx, y(float, 0〜1)正規化UV座標による位置
{prefix}/player/{id}/alive生存状態プレイヤーが存在しているか
{prefix}/player/{id}/velocity速度プレイヤーの移動速度
{prefix}/player/{id}/direction進行方向プレイヤーの移動方向
{prefix}/player/{id}/enter進入プレイヤーがゾーンへ進入した瞬間
{prefix}/player/{id}/exit退出プレイヤーがゾーンから退出した瞬間

position の引数は 正規化UV座標 です。ゾーンの左下を (0, 0)、右上を (1, 1) として、ゾーン内の位置を 01 の範囲で表します。

  • ゾーンの幅・高さ(メートル)や設置の向きに関わらず、常に 01 で届きます。
  • 受信側は解像度や物理サイズに依存せず扱えます。たとえば positionx をそのまま映像の横位置(画面幅 × x)にマッピングできます。
  • 自由四角形(corners を指定したゾーン)では、ホモグラフィ によって台形の投影面でも正しく 01 に正規化されます。

PlaneまたはゾーンのモードがContourのときは、プレイヤー単位ではなく 輪郭の点列 を送ります。テスト送信のContourモードでは、ダミーの点列が /points 系のアドレスで送られます。点数はテスト送信の設定で指定できます。

アドレス引数意味
{prefix}/points点列輪郭を表す点の並び

詳しい挙動はテスト送信で確認できます → テスト送信

送信レートは送信先設定の send_rate で決まります。

設定値動作
0.0(スキャン同期)センサのスキャンに同期して送信(約40fps)
30 / 60 / 120(Hz)指定レートで線形補間して送信

bundle_mode をオンにすると、1回の送信に含まれる複数のメッセージを OSCバンドル にまとめて送ります。

  • 同じタイミングのメッセージがまとめて届くため、受信側でフレーム単位の整合が取りやすくなります。
  • 受信側がOSCバンドルに対応していない場合は、オフにして個別メッセージとして送ってください。

設定方法は OSC送信先の設定 を参照してください。