MRが楽しい

MRやVRについて学習したことを書き残す

mocopiReceiverPluginを使ってmocopiのモーションデータをUnityで利用できない問題の対処

本日はmocpiの技術調査枠です。
mocopiReceiverPluginを使ってmocopiのモーションデータをUnityで利用できない問題の対処を記事にします。

前提条件

以下の記事を参考にmocopiReceiverPluginを利用するUnityのサンプルプロジェクトを作成しました。
bluebirdofoz.hatenablog.com
bluebirdofoz.hatenablog.com

事象

mocopiReceiverPluginのサンプルシーンを再生し、mocopiアプリからモーションデータの送信を行ってもアバターが動作しない事象が発生しました。
このとき、特にエラーメッセージ等は出力されませんでした。

原因

ファイアウォールの設定でUnityのネットワーク通信の受信設定がブロックになっていたことが原因でした。
この場合、ネットワークを通じてUDPプロトコルで送信されたモーションデータをUnityが受信しないため、アバターが動作しません。

対処

ファイアウォールの設定でUnityのネットワーク通信の受信設定を許可にすることで対処できます。
Windowsメニューで[設定]を検索して設定パネルを開きます。

設定パネルから[ファイアウォール]を検索して[ファイアウォールの状態の確認]を開きます。

WindowsDefenderファイアウォールのウィンドウが開きます。
[詳細設定]をクリックしてファイアウォールの設定ウィンドウを開きます。

[受信の規則]を開き、ブロックされている該当のUnityのファイアウォール設定上で右クリックから[プロパティ]を開きます。

ダイアログが開いたら[接続を許可する]に操作を変更して[OK]をクリックします。

これでUnityのネットワーク通信の受信設定が[許可]になりました。

これでmocopiアプリからモーションデータの送信を受けとってサンプルシーン内のアバターが動くようになりました。

ネットワークの種別

ファイアウォール設定にあるプロファイルの[ドメイン]または[パブリック]については現在接続中のネットワーク種別で参照される設定が切り替わります。

設定パネルの[ネットワークとインターネット]タブから現在接続中のネットワーク種別を確認できます。