はじめに
UnityでWebXRコンテンツを作成し、ブラウザから直接VR/AR体験を提供する方法を解説します。
デモURL:https://yushimatenjin.github.io/unity-webxr-sample/

作成環境
| 項目 | バージョン |
|---|---|
| Unity | 6000.3.4f1 |
| レンダリング | Universal Render Pipeline (URP) |
| プラットフォーム | WebGL Build Support |
セットアップ手順
Step 1: プロジェクト作成
Unity Hubを起動し、新規プロジェクトを作成します。テンプレートは 3D (URP) を選択してください。
Step 2: WebXR Exportパッケージの導入
WebXR Exportパッケージのインストールには2つの方法があります。
方法A: OpenUPM経由(推奨)
- Edit > Project Settings > Package Manager を開く
- Scoped Registries に以下を追加:
- Name:
OpenUPM - URL:
https://package.openupm.com - Scope:
com.de-panther
- Name:
- Window > Package Manager を開く
- My Registries から「WebXR Export」と「WebXR Interactions」をインストール


方法B: Git URL経由
Window > Package Manager > Add package from git URL で以下を順番にインストール:
https://github.com/nicovr/unity-webxr-export.git?path=/Packages/webxr
https://github.com/nicovr/unity-webxr-export.git?path=/Packages/webxr-interactions
Step 3: WebGLテンプレートのコピー
- Window > WebXR > Copy WebGLTemplates を実行
- Unityを再起動

WebGLテンプレートのコピーを忘れると、ビルド時にWebXR用のHTMLテンプレートが見つからずエラーになります。
Step 4: XR Plug-in Managementの設定
- Edit > Project Settings > XR Plug-in Management を開く
- WebGL タブを選択
- WebXR Export にチェックを入れる
Step 5: シーンの設定
- デフォルトの Main Camera を削除(または無効化)
- Packages/WebXR Interactions から
WebXRCameraSet.prefabをシーンにドラッグ - 必要なオブジェクト(Plane、Cubeなど)を追加

Step 6: ビルドと実行
- File > Build Settings を開く
- WebGL プラットフォームを選択し、Switch Platform
- Player Settings > Resolution and Presentation で WebGL Template を WebXR2020 に設定
- Build And Run を実行
テスト方法
PCでのテスト
- Chrome または Edge をインストール
- WebXR API Emulator 拡張機能をインストール
- ビルドしたHTMLをローカルサーバーで開く
- F12でDevToolsを開き、WebXR Emulatorタブで仮想デバイスを操作
スマートフォンARでのテスト
- Android端末でChromeを開く
- HTTPS経由でビルドURLにアクセス
- 「START AR」ボタンをタップ
iOSのSafariはWebXRをサポートしていません。iOSでのテストにはApp Clipソリューション(EyeJackなど)が必要です。
VRヘッドセットでのテスト
- Meta Quest Browserを開く
- ビルドURLにアクセス
- 「ENTER VR」ボタンをタップ
トラブルシューティング
| 問題 | 原因 | 対処法 |
|---|---|---|
| VR/ARボタンが非活性 | WebXR Exportが有効になっていない | XR Plug-in Managementの設定を確認 |
| テンプレートが見つからない | WebGLテンプレートがコピーされていない | Copy WebGLTemplatesを実行し、Unityを再起動 |
| ビルドエラーが発生 | WebGLモジュールが未インストール | Unity HubからWebGL Build Supportをインストール |
| ビルドが表示されない | HTTPS非対応 | ローカルサーバーにHTTPSを設定、または GitHub Pages等にデプロイ |

