本日は HoloToolKit の調査枠です。
以前、HoloToolKit に含まれる SharingWithUNET のサンプルシーンを試してみました。
bluebirdofoz.hatenablog.com
今回から自作のシェリングアプリにUNETの仕組みを組み込むことを目標として、サンプルシーンの内容について確認を進めます。
SharingWithUNET のシーンの Hierarchy 直下に含まれるゲームオブジェクトは以下の9個です。
Direcctional Light
- 光源のゲームオブジェクト。UNETの処理には関係なし。
UNETSharingStage
- ネットワークの接続、ゲーム状態の共有を行うスクリプト群を持ちます。
これらの処理には NetworkManager, NetworkBehaviour を用います。
NetworkManager, NetworkBehaviour の仕組みについては以下を参考。
docs.unity3d.com
docs.unity3d.com
Managers
- ワールドアンカーに関する送受信を行うスクリプト群を持ちます。
GenericNetworkTransmitter スクリプトが独自にネットワーク経由でワールドアンカーデータの送受信を実施します。
UNETAnchorManager
- UNET上でのワールドアンカーに関する管理を行うスクリプト群を持ちます。
NetworkBehaviour 経由で共有で利用するワールドアンカーの管理を行います。
HologramCollection
- 共有世界のアンカー空間を管理するためのスタブ用ゲームオブジェクトです。
本オブジェクトを基準に共有空間の座標を決定します。
HoloLensCamera
- カメラのゲームオブジェクト。UNETの処理には関係なし。
UIContainer
- UIのゲームオブジェクト。接続時のルーム選択に利用します。
Cursor
- カーソルのゲームオブジェクト。UNETの処理には関係なし。
SpatialMapping
- SpatialMappingのゲームオブジェクト。
SharingWithUNETではワールドアンカーの検出のために利用されます。