本日はMRTK3枠です。
〇MRTKv2でのSpatialMeshの実装方法
MRTKv2ではMRTKProfilerのSpatialAwarenessの項目から空間認識に関する設定を行っていました。
〇MRTK3でのSpatialMeshの実装方法
MRTK3ではシーンごとのProfilerの設定はなくなりました。
また、OpenXRにのっとって提供されておりSpatialAwarenessも同様にOpenXRとして提供されているAPIに準じる形となります。
①シーンのMRTK XR Rigオブジェクトのなかに新規でゲームオブジェクトを作成します。
Camera Offsetの中にMainCameraと同階層になるように作成します。ここではARMeshManagerという名前を付けました。
②作成したゲームオブジェクトにAR Mesh Managerコンポーネントをアタッチします。
これはARFaundationで提供されているコンポーネントになります。
Mesh PrefabはデフォルトでMissingになっています。
③hierarchy上に新規でからのゲームオブジェクトを作成します。
ここではSpatialMeshと名付けています。 SpatialMeshに以下のコンポーネントをアタッチします。
・MeshCollider
・Mesh Renderer
・Mesh Filter
MeshFilterは通常描画するためのメッシュがアタッチされますが、今回の場合動的に生成されるためNoneのままで進めます。
④Mesh RendererのマテリアルにMRTK_Wireframeのマテリアルをアタッチします。
これはPackages/MRTK StandardAssets/Materialsにあります。
このマテリアルは任意のマテリアルを使用することができ、ここで指定したマテリアルがSpatialMeshの描画に使用されます。
⑤SpatialMeshオブジェクトをプレファブ化しAR Mesh Manager*のMesh Prefab**にアタッチします。
以上でMRTK3でSpatialMeshを実装することができました。
本日は以上です。