メインコンテンツまでスキップ
バージョン: 1.0.1

QRコードトラッキング

このサンプルでは、現実世界でQRコードを検出しトラッキングする方法を紹介します。

機能の有効化

この機能を使用するには、以下のOpenXRのプロジェクト設定でQR Code Trackingにチェックする必要があります。
Project Settings > XR Plug-in Management > OpenXR (Androidタブ) > OpenXR Feature Groups > Snapdragon Spaces > QR Code Tracking
alt text

サンプルのインポート

まだサンプルをインポートしていない場合は、以下の手順でインポートすることができます。

  1. 基本パッケージのインポート
  2. 基本サンプルのインポート

サンプルシーンは以下の場所に存在します。
Assets/Samples/Snapdragon Spaces/1.X.X/Core Samples/Scenes/QR Code Tracking/QR Code Tracking Sample.unity

サンプルの仕組み

QRコードを検出、追跡、デコードするために必要なコンポーネントは2つだけです。
XR OriginゲームオブジェクトにSpacesQrCodeManagerを追加すると、Snapdragon Spacesパッケージに含まれるQRコードのサブシステムが有効になります。

検出されたQRコードごとに、SpacesARMarkerコンポーネントを持つゲームオブジェクトがインスタンス化されます。 alt text
メインのUIには、検出されるマーカーのサイズがメートル単位で表示され、利用可能なQRコードの最小および最大バージョンが表示されます。

alt text
QRコードが検出されると、SpacesQrCodeManagerで参照されているプレハブが即座にインスタンス化されます。プレハブは実世界のQRコードの位置と向きを追跡します。

プレハブはSpacesARMarkerにQRコードのデータを問い合わせ、デコードされるとすぐに表示されます。プレハブのUIには、検出されたQRコードの一意なtrackableIdUnityのドキュメントを参照)も表示されます。

このサンプルでは、複数のQRコードを同時に検出することができます。

TIP

プレハブへの参照がSpacesQrCodeManagerに登録されている場合、SpacesARMarkerコンポーネントはプレハブにまだアタッチされていなければ自動的に追加されます。プレハブへの参照が登録されていない場合は、すべてのQRコードを管理するためにSpacesQrCodeManager.markersChangedコールバックを使用することをお勧めします。