🎮
TouchDesignerとUnity間でOSC通信
前提
以下のライブラリーを利用します。
Unityでデータを受け取る
TouchDesigner側の設定
CHOPを使う方法とDATを使う方法があります。
ここではCHOPを使うこととします。
OSC Out オペレーターを用います。
Unity側の設定
1. osc.csのインスタンス化
空のGameObjectを作成し、/assets/osc/osc.cs をそれへドラッグ&ドロップして関連づけます。
そうすると、Inspectorタブ内で、OSCの設定ができるようになります。
2. データ受け取り処理
Unity側でのデータ受け取り処理をC#で書きます。
書き方の一例です。
using UnityEngine;
using System.Collections;
public class ReceivePosition : MonoBehaviour {
public OSC osc;
// Use this for initialization
void Start () {
osc.SetAddressHandler("/h", OnReceiveH);
}
// Update is called once per frame
void Update () {
}
void OnReceiveH(OscMessage message) {
float h = message.GetFloat(0);
Debug.Log("getVariables h: " + h);
}
}
書き終えたら、1. で作成した、空のGameObjectへドラッグ&ドロップして関連づけておきます。
そうすると、Inspectorタブ内で、OSCの設定欄が現れますので、1で作成したOSCを割り当てます。
3. 確かめる
TouchDesigner側のファイルが開いている状態で、Unity側のファイルをPlayして、データが正しく受け取れていることを確かめます。
Discussion