本日は 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ではワールドアンカーの検出のために利用されます。
