Unity 内で ArtNet でデータを簡易に受信と送信、録画するためのプロジェクト
qlc+, TouchDesigner, DasLight4 での動作確認は行いました
ArtNetReceiver, ArtNetSender を任意なオブジェクトにアタッチし、Port を設定する(デフォルトで 6454).
以下のようなコードを書く
public class ReceiveSample : MonoBehaviour
{
[SerializeField] private ArtNetReceiver artNetReceiver;
private void Start()
{
artNetReceiver.onDataReceived += EventHandler;
}
private void EventHandler(ArtNetData data)
{
if (data.OpCode == ArtNetOpCode.OpDmx)
{
// ここにデータ受信時のプログラムを書く
data.Logger(); //Log出力用関数
}
}
}
public class SendSample : MonoBehaviour
{
[SerializeField] private ArtNetSender sender;
[SerializeField] [Range(0, 255)] private int[] channels = new int[512];
private void Update()
{
// OpCode等を変えたい場合は引数を好きなように変えて下さい
sender.Send(channels);
}
}
LightCheck.unityがサンプルシーンです。 Receiver, Senderともにローカルホストを設定されていますので、Unityを開始して、Faderのチャンネルを変更することで動作を確認できます
ArtNetDataRecorder にパスを設定して, Unity を再生する。
録画開始はR
、録画終了はS
でできます。
MITですがコメントくれたら作者は喜びます('ω')