DEV Community

Cover image for The Best Way to Sideload Games on Quest Just Got Better
Ashish
Ashish

Posted on

The Best Way to Sideload Games on Quest Just Got Better

SideQuestのニュースを見て、公式ストアの「今すぐ始められる」弱視VRトレーニングを試してみた

SideQuestがダウンロード・セットアッププロセスを大幅に簡素化したというニュースをRoad to VRで見たとき、真っ先に浮かんだのは「もうサイドロードしなくていいタイトル、どれくらいあるんだろう」という開発者的な好奇心だった。2019年の創業以来、Quest非公式ストアの代名詞だったSideQuest。CEOのShane Harris氏がRedditで語った通り、かつての「面倒な導入手順」が過去のものになりつつあるのは、インディー開発者やアーリーアダプターにとって間違いなく朗報だ。

でも、私はもう一つの視点を持っていた。Meta Quest公式ストアには「サイドロードなし、ワンクリックで今すぐ始められる」タイトルも存在する。その一つが『AmblyoPunch』だ。Seven Sportzが開発したこのVRゲームは、弱視(ラジーアイ)や両眼視機能の課題を持つ人々向けのビジョントレーニング体験を提供する。

実は私、軽度の弱視持ちだ。子供の頃にアイパッチ療法をやった記憶がある——学校から帰って、目にシールを貼って、DSでゲームをする。あの「見えにくい目だけで世界を見ろ」という強制感。当時はただただ嫌だった。友達と外で遊びたいのに、母親に「あと30分だから」と言われてリビングのソファに座らされる。貼ったシールの端が汗でめくれて、髪の毛が張り付く不快感。でも文句を言えば「将来困るのはあなたよ」の一言で終わる。

大人になってからは特にケアしてこなかった。眼科にも行かなくなった。でも、VR開発を始めてから、立体視のズレみたいなものをなんとなく感じる瞬間が増えた。階段を降りるときの足元の距離感——一段目が思ったより浅くて、膝がガクッとする。キャッチボールでボールが手元で少しズレる感覚。グローブに収まる直前、白い縫い目が二重に見えてから合流する、あの微かなタイムラグ。Unityでシーンビューを動かしていて、遠くのオブジェクトがパチパチとちらつく感じ——Z-fightingかなと思ってニアクリッププレーンをいじっても直らなくて、ふと自分の目かもしれないと気づく瞬間。

SideQuestのニュースを読んだその夜、Quest 3を装着してストア検索。「AmblyoPunch」でヒット。インストールボタンを押して、数十秒でホーム環境にアイコンが出た。これが「公式ストアのワンクリック」だ。サイドロードのADBコマンドも、開発者モードの切り替えも、PCとのケーブル接続もいらない。adb install -r も sidequest-cli も、ヘッドセットをUSBで繋いで「デバッグを許可しますか?」のダイアログを毎回タップする儀式もない。開発者として、この摩擦のなさは単なる利便性じゃない——「試してみる」のハードルがゼロに近づいたとき、ユーザーの行動が変わることを知っているからだ。

ゲームを起動すると、壁メニューとリストメニューで設定を求められる。弱視眼:右。重症度:Mild。斜視タイプ:なし。Automaticモード推奨の文字。Customモードは「上級者向け」と書かれている。開発者としてはCustomの中身が気になるところだが、まずは推奨ルートで。プロファイル選択画面のUIはクリーンで、日本語ローカライズも自然だ。ここで「右目が弱視」と伝えるだけで、以降のダイコプティック(二眼分離)レンダリングのパラメータ——抑制強度、リバランシング曲線、融像視差の初期値——が自動でセットされる。この「設定不要で最適化される」設計、オンボーディングの教科書みたいだ。

Stage 1 — Monocular Warm-up(単眼ウォームアップ)。右目だけにガボールパターンのコインが飛んでくる。左目には何も見えない。ガボールパッチ——向きを持った、柔らかいエッジの縞模様。視覚皮質V1の単純細胞・複雑細胞がコントラスト・方向選択性・空間周波数チューニングを持って応答する、古典的かつ最強の刺激だ。VR空間でこれが立体的に飛んでくる。コントローラーでパンチする。ハンドトラッキングでもいける。村の背景、遠くに山。コインはゆっくり、大きめ。3つのハート。スパイクが来たら物理的に避ける——頭を動かす、しゃがむ。Questの6DoFトラッキングがそのままゲームメカニクスになっている。

ステージクリアの閾値は直近10回の成果で70%以上。ローリングウィンドウで判定される。これ、実装としてはシンプルなデックキューで管理できる。成功/失敗をブーリアンでプッシュ、サイズ10を超えたらポップ、成功率を計算。Queue<bool> recent = new(10); recent.Enqueue(success); if (recent.Count > 10) recent.Dequeue(); float rate = recent.Count(x => x) / 10f; 40%未満で降格。斜視プロファイルだと最終融像ステージ前で80%必要。この「降格ありき」の設計が面白い。単調な上り坂じゃなくて、波がある。ゲームデザイン的には「フロー理論」のチャレンジ・スキルバランスを、適応的難易度調整で動的に保っている——でもパラメータは固定ウィンドウの成功率だけ。シンプルで堅牢。

Stage 2 — Breaking Suppression(抑制の打破)。両眼にターゲットが見えるが、左目(優位眼)側が大幅に暗く、薄く描画される。レンダリングパイプライン的には、左右のアイバッファに対するアルファブレンド係数を非対称にしているのだろう。片眼視野のコントラストゲインを意図的に下げて、脳が「弱視眼の入力の方が信頼できる」と判断させる。ダイコプティック提示の核心部分だ。パッチ療法が「優位眼を遮る」のに対し、こっちは「優位眼を生かしたまま弱視眼を優先させる」。両眼視の再構築としては、こちらの方が生理学的に自然だ。抑制スコトマ(抑制盲点)を意識的に「薄くする」感覚——左目の視野周辺が霧がかかったようになり、右目のガボールコインだけがクッキリ浮かび上がる。最初は違和感しかなかった。でも3セット目くらいで、脳が「あ、右目の情報の方が濃いな」と切り替わる瞬間がある。それを感じ取れたとき、なんか嬉しかった。

Stage 3 — Rebalancing Eyes(リバランシング)。優位眼の鮮明度・輝度がサブステップごとに徐々に回復していく。ここが一番「トレーニング感」がある。最初は右目だけで追えていたコインが、左目もクリアになってくると、二重像みたいな感覚が出る。でもゲームは「パンチして当てろ」という単一のタスクを与え続ける。脳は無意識に二つの像を融合させようとする。ここでもガボールコインは小さく、速くなる。スパイクは大きく。物理回避の頻度が上がる。ステージ後半になると、コインの空間周波数が上がって——より細かい縞模様になって——コントラストも落ちてくる。視覚皮質の空間周波数チャネルごとにゲインを上げていく、教科書通りのコントラスト感度トレーニングだ。

Stage 4 — Fusion Training(融像訓練)。パンナム融像領域内の微小ズレ。左右の像にわずかな視差を意図的に与えて、脳が単一の立体知覚として融合できる範囲で訓練する。これ、ステレオグラムの原理を動的にやっているようなものだ。斜視持ちの人向けには内斜視・外斜視でバージョンオフセットの方向を変えられる。実装としては、左右カメラの投影行列に微小な平行移動成分を加えるだけ——だが、それが「立体視の再獲得」に直結する。projectionMatrix[0, 2] += offset; // 左右で符号反転 これだけで、網膜上の対応点ズレを人工的に作り出し、脳の融像機構を刺激する。Questの単一パネル・フレネルレンズ光学系でも、レンダリングターゲットを二つ(左目用・右目用)用意して別テクスチャを描画すれば、完全に独立した左右映像が提示できる。これがスタンドアロンVRの強みだ。

ワールド進行は村→都市→宇宙→月→火星→金星。スコアベースでアンロック。ステージが進むごとに背景のパララックスも深くなる。都市ステージあたりから、ビルの奥行き感が明確になってくる。窓ガラスの反射、路面のタイル目地、遠くの信号の赤——それらが「平面に描かれた絵」じゃなくて「そこに空間がある」と感じられる瞬間が増える。宇宙ステージでは小惑星が立体的に迫る。火星・金星まで行けば、かなり高度な立体視処理が要求されるはずだ。パナム領域の外側——融像できない視差量——まで挑戦させられるステージ設計になっているんだろうな。

私が今いるのはStage 3の途中。都市ステージを何周かして、Stage 4の入り口で一度降格した。40%を切った夜があった——疲れていたのか、集中力が続かなかった。ヘッドセットを外したとき、目の奥がズンと重くて、リビングの蛍光灯がやけに眩しく感じた。翌朝、再挑戦して70%超えで再昇格。この「降格・昇格」のフィードバックループが、続けられる理由になっている。ゲームとしての達成感と、視覚機能の改善という実利が結びついているからだ。スコアが伸びたらワールドが広がる。ワールドが広がったら、もっと奥行きのある世界でパンチできる。単純だけど、強力なループだ。

セッション後の変化は地味だが確実だ。ヘッドセットを外して、リビングのテーブルの上のコーヒーカップを取るとき、手が迷わなくなった。階段を降りるとき、足元の段差を一段ずつ確認しなくてよくなった。キャッチボールで、ボールが手に吸い付くような感覚が増えた——縫い目が二重に見えてから合流するタイムラグが、明らかに短くなっている。これらがプラセボなのか、可塑的な視覚皮質の再配線なのか——臨床試験データがあるわけではないし、AmblyoPunchは医療機器でも治療でも治癒でもないと明記されている。眼科専門医の指導を補完するトレーニング補助ゲームだ。Seven Sportzの製品ページ(https://www.amblyovision.com/products/amblyopunch/)にも、研究論文への言及があるだけで「治療効果を保証するものではありません」と明確に書かれている。ガボールパッチを用いたコントラスト感度向上(Polat et al., 2004ら)、ダイコプティック訓練による抑制解除(Hess et al., 2014ら)、パンナム領域を用いた融像訓練——それぞれにエビデンスがある手法を、VRという媒体で統合したのがこの製品だ。

でも、開発者として見ても、このアプローチは筋が通っている。ダイコプティック提示のパラメータ(抑制強度、リバランシング速度、融像視差量)をユーザーのプロファイル(弱視眼、重症度、斜視タイプ)に合わせて自動調整するAutomaticモード。上級者が手動で各ステージのオン/オフやパラメータを弄れるCustomモード。この二層構造は、アクセシビリティとエキスパートユースケースの両立としてよく設計されている。Customモードでは、Stage 1〜4の有効/無効、ガボールパターンの空間周波数・コントラスト・提示時間、抑制アルファ値の初期値と減衰カーブ、融像視差の初期値・最大値・ステップ幅までいじれるらしい。UnityのScriptableObjectあたりでパラメータセットを定義して、Automaticはプリセット、Customはエディタ拡張で露出——みたいな実装かなと推測する。

ガボールパターンを「コイン」というゲームオブジェクトに映し、スパイクを「回避アクション」に結びつけたゲーミフィケーションも秀逸だ。単調な視覚刺激提示タスク(従来のビジョントレーニングソフトによくある「ガボールパッチの向きを答えろ」みたいなの)を、物理的アクションとスコアリング、ワールド進行というゲームループに組み込んだ。VRならではの身体性——実際にパンチを出し、実際に頭を動かして避ける——が、視覚-運動統合(手眼協調)を自然に強化する。これ、従来のPCモニタベースのビジョントレーニングでは絶対に出せない効果だ。前庭系・固有受容感覚・視覚のマルチモーダル統合が、可塑性を高めるという仮説は立てやすい。

技術的な興味深さで言えば、Questの単一パネル・レンズ光学系でどうやって左右独立の映像を提示しているか。レンダリングターゲットを二つ用意し、それぞれのアイバッファに別テクスチャを描画する。ガボールパターンはプロシージャル生成か、事前計算されたテクスチャアトラスか。シェーダーで向き・空間周波数・コントラストを動的に変調しているのなら、GPU負荷はほぼ無視できるレベルだろう。float gabor = cos(2*PI*freq*uv.x) * exp(-(uv.x*uv.x + uv.y*uv.y)/(2*sigma*sigma)); こんなフラグメントシェーダー一発で、リアルタイムに任意のパラメータ生成可能だ。Stage 4の微小視差は、投影行列のオフセットで実現しているはず——これならレンダリングコストはゼロに近い。Quest 2/3のAdreno GPUで72/90Hzを安定して出せているのは、この「描画負荷を極限まで削った設計」の賜物だろう。オープンソースではないし、Unity/Unrealどちらで作られているかも公表されていないが、Questネイティブのパフォーマンスは問題なく出ている。

SideQuestのニュースがきっかけで「公式ストアでワンクリック」を体験し、そこから自分の弱視という個人的な課題に向き合うツールを見つけた。開発者視点では、ダイコプティックレンダリングの実装パターンや、パフォーマンスゲートのアルゴリズム、ゲーミフィケーションの設計を学べた。当事者視点では、アイパッチの「先」にある、遊びながら継続できる選択肢を手に入れた。あの頃のリビングのソファ——シールのベタベタ、DSの画面、母親の声——とは全然違う。今は自分の書斎で、Quest 3を被って、宇宙空間でガボールコインをパンチしている。右目だけで見えるコインが、左右の目で融合して、一つの立体的な光になる瞬間を、自分でコントロールしながら待っている。

まだ火星・金星までは到達していない。Stage 4の融像訓練で、どこまで立体視が深まるか。コーヒーカップを取る手が迷わない朝が、もっと当たり前になるか。医療機器じゃないから、劇的な「治癒」を謳わない。でも、「トレーニング補助ゲーム」として、毎日10分、ヘッドセットを被ってパンチを出す——その積み重ねが、日常の見え方を少しずつ書き換えていく実感がある。コードを書くとき、エディタの文字が少しシャープに見える。遠くの山の稜線が、二重じゃなくて一本の線として見える。そんな小さな「気づき」が、続ける燃料になる。

SideQuestの進化も、公式ストアの充実も、どちらもユーザーにとっては選択肢が増えるだけでいい。サイドロードが簡単になろうが、公式でワンクリックだろうが、目的の体験に最短で到達できれば、それでいい。技術は透明であるべきだ——ユーザーが「どう導入するか」じゃなくて「何を体験するか」だけを考えられるとき、初めて本当の価値が届く。

もしあなたが、弱視や両眼視の課題を抱えていて、VRヘッドセットを持っているなら。あるいは、視覚機能トレーニングに興味がある開発者なら。公式ストアで今すぐ試せる。パッチ療法の「先」にある、遊びながら継続できる選択肢として。

👉 https://www.meta.com/en-gb/experiences/amblyopunch/1239507485902689/

Top comments (0)