同じネットワークにあるUnityアプリのタイムラインをマルチキャストで同期する

マルチキャストを使ってみたら、IPアドレスの設定必要なく、シンプルで便利でした。

同じネットワーク内で起動しているUnityアプリのタイムラインの時間をUDPで同期するサンプル。 一応ブロードキャストもサポートしてます。

gif

github.com


マルチキャストについてはこの記事が参考になりました。 www.infraexpert.com


複数台の端末同期は皆よくやる要件で

  • OSC
  • WebSocket
  • MTC
  • 音に信号埋め込んで同期 → これ*1

と何度もやっている気がする。 8年前の初めてoFでc++書きはじめたときから同じようなことやってますね…

マルチキャストはシンプルなので、ささっと使いたい時に便利かもかも。
(もっと厳しい要件のときには、ネットワークの遅延測ってとかやろうとおもいます)