MRが楽しい

MRやVRについて学習したことを書き残す

SampleQRCodesプロジェクトを使ってHoloLens2でQRコードの位置追跡を試す

本日は HoloLens2 の小ネタ枠です。
SampleQRCodesプロジェクトを使ってHoloLens2でQRコードの位置追跡を試します。
f:id:bluebirdofoz:20210522020813j:plain

SampleQRCodes

SampleQRCodes プロジェクトは HoloLens2 でQRコードの追跡を試すスクリプトとシーンが設定されたサンプルです。
github.com

プロジェクトの取得

今回は Unity バージョンを MRTK の推奨バージョンに合わせるため、[unity2019]のブランチを取得しました。
f:id:bluebirdofoz:20210522020830j:plain

GIT のクローンまたは[Download ZIP]からプロジェクトファイルをダウンロードします。
f:id:bluebirdofoz:20210522020842j:plain

Unity でプロジェクト直下の SampleQRCodes ディレクトリを指定してプロジェクトを開きます。
f:id:bluebirdofoz:20210522020851j:plain

参照エラーの解消

著者環境では Unity プロジェクトを開くと、以下のエラーが発生しました。

The type or namespace name 'QR' does not exist in the namespace 'Microsoft.MixedReality

f:id:bluebirdofoz:20210522020900j:plain

本エラーは Microsoft.MixedReality.QR のパッケージを取得することで解決できます。
メニューから[NuGet -> Manage NuGet Packages]を選択します。
f:id:bluebirdofoz:20210522020908j:plain

[Microsoft.MixedReality.QR]を検索して[Install]を実行します。
f:id:bluebirdofoz:20210522020918j:plain

これでエラーが解消されます。
f:id:bluebirdofoz:20210522020930j:plain

シーンの設定

Assets/Scenes/QRCodesSample.unity のシーンファイルを開きます。
f:id:bluebirdofoz:20210522020940j:plain

著者環境ではこのままビルドしたところ、HoloLens2 上で正常に動作しなかったため、以下の変更を行いました。
[]の Inspector ビューを開きます。
f:id:bluebirdofoz:20210522020949j:plain

プロファイルの選択を[XRSDKCustomProfile1]から[DefaultXRSDKConfigurationProfile]に変更します。
f:id:bluebirdofoz:20210522020959j:plain

プロジェクトをビルドして HoloLens2 へインストールを行います。
f:id:bluebirdofoz:20210522021010j:plain

インストール手順の詳細は以下を参照ください。
bluebirdofoz.hatenablog.com

注意点としてビルドのプラットフォームを[ARM64]で指定する必要があります。

動作確認

アプリを起動して HoloLens2 でQRコードを検出すると、QRコードの位置にマーカとQRコードの情報が表示されます。
f:id:bluebirdofoz:20210522021025j:plain