プラットフォーム判定 説明書

このギミックは、参加した人の環境を見て、決めた部屋へ自動で振り分けるためのものです。

PCVR と Desktop を分けたいときや、Quest と Mobile を分けたいときに使います。

主な用途

1. 判定ルール

Windows版で VR PCVRユーザーの移動先 に移動
Windows版で 非VR Desktopユーザーの移動先 に移動
Windows版で 非VR だがホワイトリスト一致 PCVRユーザーの移動先 に移動
Android版で Touch 入力 Mobileユーザーの移動先 に移動
Android版で VR かつ Touch ではない Quest単機系VRユーザーの移動先 に移動
選ばれた移動先が None 指定がNoneの場合の移動先 に移動
保険先も None 移動せず安全停止。黒フェードを解除し、固定も解除して終了
※「Quest単機系VR」は厳密な機種名判定ではなく、実装上は Android 上の VR 端末側をまとめた扱いです。

3. Inspector 項目一覧

PCVRユーザーの移動先 Windows版で VR 判定になったユーザーの移動先です。
Desktopユーザーの移動先 Windows版で 非VR 判定になったユーザーの移動先です。
Quest単機系VRユーザーの移動先 Android版で VR 側と判定されたユーザーの移動先です。
Mobileユーザーの移動先 Mobileとして判定されたユーザーの移動先です。iOS / Android の両方を含む想定です。
指定がNoneの場合の移動先 本来の移動先が None のときに使う保険先です。設定漏れ時の事故防止用です。
Join / Respawn後の判定開始待機時間 参加直後またはリスポーン直後に、どれくらい待ってから判定を始めるかです。
再試行間隔 Player取得に失敗した場合の再試行間隔です。
最大再試行回数 Playerが取れない状態が続いたとき、何回まで再試行するかです。
Join時のフェードアウト時間 参加時に黒くなるまでの時間です。
テレポート後のフェードイン開始待機時間 テレポート後、少し待ってから黒を解除したいときに使います。
フェードイン時間 黒画面から元の画面へ戻る時間です。
デスクトップモードでもPCVRユーザーとして扱うリスト プレイヤー名完全一致で、Desktopでも PCVR 側へ通したいユーザー名一覧です。
大文字小文字を無視して比較(非推奨) リストに入れるプレイヤー名を比較するときに大文字小文字を無視します。誤一致の原因になりやすいため通常は OFF 推奨です。
判定中にローカルプレイヤーを一時固定する 振り分け中にプレイヤーが動かないように一時固定します。
Join時に最初から黒画面にする Join直後から黒画面で始めたい場合に ON にします。
デバッグログを有効にする Unity Console に判定ログを出したい場合に ON にします。
黒フェード用Image 画面全体を覆う黒い Image を指定します。フェード演出に使います。

4. ギミック配置について

このギミックの一番親「プラットフォーム判定」は、必ず join するポイント、つまり VRCWorld と同じ座標 に配置してください。

5. ギミック内オブジェクトの「判定抜け防止コライダー」「判定時暗闇作成」について

判定時に必要な囲いで、場所も関係するため、このオブジェクトだけ動かすのは推奨しません。

仕組みがわからない方は、親オブジェクトを動かしてください。

6. フェード用パネルについて

非常に大きく見えることがありますが、フェード用途では正常です。

そのままで問題はなく、下手に触ると暗転漏れが発生します。

7. 設定例

Quest対応ゲームワールド寄りの例

など