こんにちは。いっせい(@issey_tsumiki)です。
今回はUnityReflectをUnityEditorで開発し、コンテンツを制作する手順をまとめます。
UnityReflectを最大限引き出すカスタマイズの方法はまとまり次第公開していきます。

開発環境

UnityHub ※Industrial版でも問題ありません。
Unity 2019.2.x
UnityReflect v1.1.0

環境セッティング手順

UnityHubを起動しましょう。
UnityReflectを通してBIMデータをImportしたいUnityProjectを開きます。
Projectがまだない場合は、新規で作りましょう。


URPやHDRPにはまだ対応していないので、3Dを選択してください。


Editorが立ち上がると、左上のバーにあるWindowをクリックし、PackageManagerを選択してください。


PackageManagerですが、Unityから公式に出しているプラグインがまとめられている場所になります。
UnityReflectのカスタマイズは正式リリースされておらず、プレビュー版として公開されています。
Advanced項目からShow preview packages にチェックを入れてください。
チェックを入れることで、プレビュー版として公開されているプラグインが表示されます。
UnityReflectを選択し、右下のInstallを行ってください。


無事にInstallが出来るとProjectの中にあるPackagesにUnityReflectが追加されています。

ここまでの手順でUnityEditorでUnityReflectを使用する環境が整いました。
ここから2通りの開発が可能となります。
ローカルにデータをImportしてコンテンツ開発 or UnityReflectViewerをカスタマイズする

ローカルにデータをImportしてコンテンツ開発

Window内にReflectが追加しています。


こちらを選択すると別ウインドウでReflectが表示されます。
BIM側で書き出しているProjectが一覧で表示されます。
表示されているProjectをImportします(今回は私が書き出したUnityReflect_v1.106です)。
※UnityHubにログインしていない場合、エラーで項目が表示されません。


Importが出来るとProject内のAssetに追加されます。


追加されたPrefabをHierarchyに追加するとモデルが表示されます。


UnityReflectViewerでも確認できるように、全てのモデルにBIMのInformationメタデータ(情報)が付いています。

ローカルにデータを保存する方法は、UnityEditorへのImporterとして活用することが出来ます。
BIMの情報を紐付けてコンテンツを開発する際にとても便利です。
但し、UnityReflectの魅力であるリアルタイム変更(Sync機能)は動作しなくなります。
Sync機能を標準に搭載したい場合はUnityReflectViewerをカスタマイズする必要があります。
UnityReflectViewerをカスタマイズする難易度はかなり高いので、まずはローカルにて開発してみては如何でしょうか。
公開されているReflectViewerを体験するところから初めてみましょう。

よくあるエラー

UnityHubにログインしていない場合、Reflectのローカルインポートにてエラーが出ます。
ログインしておきましょう。


UnityReflectViewerをカスタマイズする

※後日公開