【React Native】Meta Quest向けVRアプリを Expoで作れるようになったので試してみた。

GMOグローバルサイン・ホールディングス CTO室 所属のはが(@mxcn3)です。
以前の記事では、「Meta Questのカメラ映像をブラウザで利用する」方法を紹介しました。

今回は、2026年2月に発表された React Native の Meta Quest 公式対応 を実際に試してみました。以前はReact Nativeを利用してアプリケーションの開発をしていたので、今回の公式サポート開始のニュースを見て気になって試してみました。結論から言うと、Expo Go を Meta Quest にインストールして expo start するだけで、いつもの React Native 開発とほぼ同じ感覚でアプリの動作確認ができました。


React Native が Meta Quest に対応した背景

2025年の React Conf で発表され、2026年2月24日の公式ブログで Meta Quest デバイスへの対応の詳細が公開されました。Meta Quest は Meta Horizon OS という Android ベースの OS で動作しています。つまり既存の React Native の Android ツールチェーンやビルドシステムがほぼそのまま使えるということです。特別な VR フレームワークを導入する必要はなく、expo-horizon-core というプラグインを追加するだけで Quest 固有の設定が適用されるようです。

検証環境

今回の検証で使用した環境は以下の通りです。

項目内容
OSWindows 11
Node.js22.17.0
Expo SDK54
React Native0.81.5
expo-horizon-core1.0.7
対象デバイスMeta Quest 3 (v2.1)

事前準備

まず、Meta Horizon Store の Expo Go ページ から Expo Go をインストールします。リンクをタップするだけでストアページに飛べるので、そのまま「入手する」を押すだけです。あとは PC 側で npx expo start を実行し、Quest の Expo Go で QR コードをスキャンするだけ。コードを変更すればライブリロードで即反映されます。

Expo Go ストアページ

空のプロジェクトの作成

Expo の blank テンプレートでプロジェクトを作成します。

npx create-expo-app@latest my-quest-app # テンプレートからアプリケーションを作成
cd my-quest-app # アプリケーションのディレクトリに移動
npm install # 依存パッケージをインストール

Meta Questの実機で確認をする

QRコードの生成 ( PC )

下記のコマンドで開発用のアプリケーションを起動します。

npx expo start # 開発サーバーの起動
expo start の実行画面

QRコードの読み取り ( Meta Quest )

QRコード読み取り手順1

アプリケーションの起動

QRコード読み取り手順2

手順をまとめると、たったこれだけです。

  1. Expo Go を Quest にインストール
  2. PC で npx expo start を実行
  3. Quest の Expo Go で QR コードをスキャン

Web 開発に近い感覚で Questで動くアプリを開発できるのは、かなり快適でした。実際に Todo アプリを作って Quest 上で動かしてみたところ、コントローラーを使ってボタン操作できることも確認できました。

ただし、VR 空間内に表示される 2D アプリ という形式です。Quest の目の前にパネルが浮いている状態で、没入感のあるイマーシブな VR 体験ではありませんでした。そこで、イマーシブな体験を実現するために WebXR を組み合わせられないかと考えました。

「WebXR Report」のページを確認したところ、スクリーンショットの通り、すべて未対応でした。

WebXR サポート状況

React Native + WebView の組み合わせでイマーシブな WebXR 体験を実現することは、現時点ではできないということがわかりました。WebXR を使いたい場合は、Quest のネイティブブラウザ(Meta Quest Browser)から直接アクセスする必要があります。


まとめ

React Native の Meta Quest 対応を試してみた結果、Expo Go のおかげで導入のハードルは非常に低いことがわかりました。

  • Expo Go をインストールして expo start するだけで、Quest 上で即座に動作確認ができる
  • React Native の通常の開発フローがそのまま使え、ライブリロードも動作する
  • ただし現時点では 2D パネル表示であり、イマーシブな VR 体験ではない
  • WebXR で没入体験を実現しようとしたが、WebViewer 環境では WebXR が動作しなかった

React Native でモバイルアプリを開発している方にとって、Quest 対応は既存の知識をそのまま活かせる VR 開発への入り口として最適だと感じました。ご質問や不明点がありましたら、お気軽に X: @mxcn3 までご連絡ください。


参考リンク