TouchDesigner 輸出數值
啟動 TouchDesigner,沿用預設範本。
在預設內容的 Noise 後面連接 Rename CHOP 與 OSC Out CHOP。
點擊 Rename CHOP,調整 To 的參數為 a1,會把 Noise 產生的 chan1 重新命名為 a1。
點擊 OSC Out CHOP,將 Network Address 與 Network Port 屬性記錄下來,將用於 Unity 的接收設定。
Unity 安裝 OSC Jack 套件
開啟 Unity 專案 (2021.3 以上版本)。
點擊 Edit 開啟 Project Settings。
切換到 Package Manager。
於 Scoped Registries 中註冊一個套件來源,屬性內容如下。
- Name: Keijiro
- URL: https://registry.npmjs.com
- Scope(s): jp.keijiro
點擊 Save 儲存並關閉 Project Settings。
點擊 Window > Package Manager。
切換套件來源為 My Registries。
從列表中找到 OSC Jack,點擊 Install 進行安裝。
Unity 接收與顯示數值
於 Canvas 中建立 Text (Legacy) 物件,調整文字顏色與大小讓它明顯一些。
在 Assets 資料夾上滑鼠右鍵 > Create > ScriptableObjects > OSC Jack > Connection,建立 OscConnection 設定檔。
選取 OscConnection,將 Port 改成先前於 TouchDesigner 紀錄的設定。
建立空物件 GameManager,加入 OSC Jack 的 Event Receiver 腳本。
將 OscConnection 設定檔拖曳至 Connection 屬性。
OSC Address 輸入「/a1」以接收 TouchDesigner 產生的 a1 數值。
修改 Data Type 為 String。
於 String Event 建立事件監聽,拖曳 Text (Legacy) 物件,並選擇 Dynamic string 內的 text。
執行測試
執行專案,TouchDesigner 產生的數值將能即時同步到 Unity 中。