Google Cardboard for Unity のクイックスタート

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

このガイドでは、Unity 用の Google Cardboard XR Plugin for Unity を使用して、独自のバーチャル リアリティ(VR)体験を創出する方法について説明します。

Cardboard SDK を使用して、スマートフォンを VR プラットフォームにすることができます。スマートフォンは、立体画像レンダリングで 3D シーンを表示し、頭の動きを追跡して反応し、ユーザーがボタンを押したことを検知してアプリを操作できます。

まず、HelloCardboard を使用します。これは、Cardboard SDK の主な機能のデモを実施するデモゲームです。このゲームでは、ユーザーは仮想世界を見回り、オブジェクトを見つけて収集します。次の方法について説明します。

  • 開発環境をセットアップする
  • デモアプリのダウンロードとビルド
  • Cardboard ビューアの QR コードをスキャンして、パラメータを保存します
  • ユーザーの頭の動きをトラッキングする
  • 左右の目の歪みを適切に補正することで、立体画像をレンダリングする
  • VR モードのオンとオフを切り替える

開発環境をセットアップする

ソフトウェア要件:

SDK をインポートして新しいプロジェクトを作成する

Unity SDK をインポートして新しいプロジェクトを作成する手順は次のとおりです。

  1. Unity を開き、新しい 3D プロジェクトを作成します。
  2. Unity で [Window] > [Package Manager] に移動します。
  3. [+] をクリックし、[Add package from git URL] を選択します。
  4. テキスト入力フィールドに https://github.com/googlevr/cardboard-xr-plugin.git を貼り付けます。
    パッケージは、インストール済みのパッケージに追加する必要があります。
  5. Unity 用 Google Cardboard XR プラグインのパッケージに移動します。[サンプル] セクションで、[プロジェクトにインポートする] を選択します。
    サンプル アセットは Assets/Samples/Google Cardboard/<version>/Hello Cardboard に読み込む必要があります。
  6. Assets/Samples/Google Cardboard/<version>/Hello Cardboard/Scenes に移動して [Add Open Scenes] を選択し、[HelloCardboard] を選択してサンプルシーンを開きます。

Android プロジェクト設定の構成

[File] > [Build Settings] に移動します。

  1. [Android]、[Switch Platform] の順に選択します。
  2. [Add Open Scenes] を選択して [HelloCardboard] を選択します。

プレーヤー設定

解決策とプレゼンテーション

[プロジェクト設定] > [プレーヤー] > [解像度とプレゼンテーション] に移動します。

  1. [デフォルトの向き] を [左横向き] または [横向き] に設定します。
  2. 最適化フレーム ペースを無効にします。

その他の設定

[プロジェクト設定] > [プレーヤー] > [その他の設定] に移動します。

  1. OpenGLES2OpenGLES3Vulkan、または Graphics API でそれらの組み合わせを選択します。
  2. [Minimum API Level] で [Android 7.0 'Nougat' (API level 24) or more] を選択します。
  3. [対象 API レベル] で API level 31 以上を選択します。
  4. [Scripting Backend] で [IL2CPP] を選択します。
  5. ターゲット アーキテクチャARMv7ARM64、またはその両方を選択して、目的のアーキテクチャを選択します。
  6. [Internet Access] で [Require] を選択します。
  7. [Package Name] に会社のドメインを指定します。
  8. Graphics API として Vulkan が選択されている場合:
    • [Vulkan の設定] で、[レンダリング中にディスプレイの回転を適用する] チェックボックスをオフにします。
    • Unity のバージョンが 2021.2 以上の場合は、テクスチャ圧縮形式ETC2 を選択します。

公開設定

[プロジェクト設定] > [プレーヤー] > [公開設定] に移動します。

  1. [ビルド] セクションで、Custom Main Gradle TemplateCustom Gradle Properties Template を選択します。
  2. Assets/Plugins/Android/mainTemplate.gradle の依存関係セクションに次の行を追加します。

      implementation 'androidx.appcompat:appcompat:1.4.2'
      implementation 'com.google.android.gms:play-services-vision:20.1.3'
      implementation 'com.google.android.material:material:1.6.1'
      implementation 'com.google.protobuf:protobuf-javalite:3.19.4'
    
  3. Assets/Plugins/Android/gradleTemplate.properties に、次の行を追加します。

      android.enableJetifier=true
      android.useAndroidX=true
    

XR プラグイン管理設定

[Project Settings] > [XR Plugin Management] に移動します。

  1. [プラグイン プロバイダ] で [Cardboard XR Plugin] を選択します。

プロジェクトのビルド

[File] > [Build Settings] に移動します。

  1. [Build] を選択するか、デバイスを選択して [Build and Run] を選択します。

iOS プロジェクト設定の構成

[File] > [Build Settings] に移動します。

  1. [iOS] を選択し、[Switch Platform] を選択します。
  2. [Add Open Scenes] を選択して [HelloCardboard] を選択します。

プレーヤー設定

解決策とプレゼンテーション

[プロジェクト設定] > [プレーヤー] > [解像度とプレゼンテーション] に移動します。

  1. [デフォルトの向き] を [左横向き] または [横向き] に設定します。

その他の設定

[プロジェクト設定] > [プレーヤー] > [その他の設定] に移動します。

  1. [カメラの使用説明] に「Cardboard SDK requires camera permission to read the QR code (required to get the encoded device parameters).」と入力します。
  2. [Target minimum iOS Version] に「12.0」と入力します。
  3. [Package Name] に会社のドメインを指定します。

XR プラグイン管理設定

[Project Settings] > [XR Plugin Management] に移動します。

  1. [プラグイン プロバイダ] で [Cardboard XR Plugin] を選択します。

プロジェクトのビルド

[File] > [Build Settings] に移動します。

  1. [ビルド] または [ビルドして実行] を選択します。

リセンタリング

Cardboard SDK では、Recenter() を使用してヘッドトラッカーを中央に戻すことができます。

サンプル アプリケーションを使用して手順を試す手順は次のとおりです。

  1. デバイスを中央に戻す位置に移動します(新しいフォワード ヘッド ポーズとして使用します)。
  2. Cardboard デバイスのトリガーを 3 秒以上押してください。
  3. トリガーを離します。
  4. 最初のポーズは、カメラが向いている方向にあります。

VR モードのオンとオフを切り替える

Unity XR Plugin Management API を使用すると、Unity 向け Google Cardboard XR プラグインで VR モードのオンとオフを切り替えることができます。エンドユーザーのドキュメントと使用例については、Unity のエンドユーザー ドキュメントをご覧ください。

HelloCardboard サンプルの VrMode シーンは、前述の API の基本的な使用方法を示しています。このシーンでは、終了アイコン をタップして VR モードをオフにし、画面上の任意の場所をタップするだけで VR モードをオンに戻すことができます。この方法について詳しくは、VrModeController.cs をご覧ください。

次のステップ