VRフィットネスの「継続」問題から学ぶ、弱視トレーニングアプリの設計思想
「VRフィットネスは続くのか?」——Supernaturalの独立版アーリーアクセス開始は、この問いに対する一つの実証実験だと感じています。注目すべきは派手な新機能ではなく、「毎日戻ってきたくなる設計」が評価された点です。エンゲージメントループ、セッション設計、進捗の可視化。これらはフィットネスに限らず、あらゆる反復トレーニングアプリの根幹です。
ここで視覚トレーニングの話をしたい。弱視(lazy eye)や両眼視の課題に対して、従来の定番はアイパッチ。悪い目を隠して良い目を休ませる、という発想です。ただし多くの人にとって、これは「我慢の時間」でしかありません。続かない。だから効果も安定しない。これはフィットネスアプリが解決してきたのと同じ「継続性」の問題です。
なぜ「我慢」は続かないのか
フィットネスアプリの継続設計を分解すると、おおよそ三つの層が見えてきます。ひとつはセッションの粒度。もうひとつは進捗の可視化。そして最後に、負荷の漸進的な調整です。どれが欠けても、ユーザーは数週間で離脱します。
視覚トレーニングも構造は同じです。アイパッチは「セッションの粒度」が粗く、「進捗の可視化」がほぼ存在せず、「負荷の調整」も専門家の指示に依存します。結果として、最も効果が必要な人ほど続けられない、という逆説が生まれます。
AmblyoPunchは、その我慢を遊びに置き換える試みです。開発はSeven Sportz、プラットフォームはMeta Quest。プレイヤーは村→都市→宇宙→月→火星→金星へと広がる没入型環境で、ガボールパターンのコインをパンチし、赤いスパイクをよけ、3つのハートを守りながらステージを進みます。コントローラーでもハンドトラッキングでも操作可能。進行に応じてオブジェクトは速く小さく、スパイクは大きくなり、hand-eye coordinationと奥行き知覚の練習負荷が上がっていきます。
ただのゲームではありません。自動モードの4段階ダイコプティック設計があります。
- 単眼ウォームアップ — 弱い目だけにターゲットを提示し、優位眼との競合なしで追跡と注意を構築
- 抑制の解除 — 両眼にターゲットを見せるが、優位眼の視界を大きく暗く/洗い流し、脳が弱い目からの入力を優先するよう誘導
- リバランス — 複数のサブステップで優位眼の明瞭さと明るさを徐々に戻し、弱い目がアクティブなままバランスを回復
- 融合トレーニング — Panumの融合領域内のわずかな画像ずれを統合し、1つの3D知覚として捉えてターゲットに正確に当てる
二眼ディスプレイを「臨床装置」に変える設計
技術的に面白いのは、これが「両眼に異なる視覚入力を同時提示する」ダイコプティックの仕組みを、VRの二眼ディスプレイでそのまま実装している点です。HMDが本質的に左右独立の映像チャネルを持つからこそ、視差・輝度・コントラストを眼ごとに制御できます。
ここは、通常のゲームエンジンのレンダリングパイプラインを考えると示唆的です。多くのVRアプリは左右のカメラを「同じシーンに対する視点差」として扱います。AmblyoPunchはそこに、眼ごとの輝度マスク・コントラスト減衰・視差オフセットという追加のパラメータを乗せている。概念的には、レンダリング後の左右バッファに対して眼別のポストプロセスを噛ませるイメージです。臨床の視覚科学で使われるガボールパッチ刺激——方位を持ち、エッジが柔らかい縞模様——をゲームオブジェクトとして使っているのも、視覚皮質のコントラスト・方位・細部処理を駆動するための合理的な選択です。
ゲームオブジェクトとしてのガボールパターンは、テクスチャとして事前生成するか、シェーダで動的に計算するかの選択があります。方位・空間周波数・位相をパラメータ化できれば、ステージごとに刺激を差し替えられます。実装としてはフラグメントシェーダで正弦波を計算する方が、解像度や周波数の調整に対して柔軟でしょう。これは推測ではなく、こうした刺激を扱う場合の一般的な設計上の分岐点です。
進行ゲートを「データで」管理する
進行はパフォーマンスで制御されます。直近10回の結果(パンチと回避)のローリングウィンドウで概ね70%以上が前進の目安、40%を下回ると降格の可能性。斜視プロファイルでは最終融合トレーニングに入る前に80%以上が要求されます。
ここが工学的に一番おいしい部分です。ゲーミフィケーションでよくある「時間経過で自動解放」ではなく、成功率にゲートをかける設計。これは裏を返せば、ユーザーが停滞することを許容する設計でもあります。40%を下回れば降格する。つまり、無理に進ませない。
ローリングウィンドウを直近10回に設定しているのも妥当です。短すぎればノイズで振動し、長すぎれば上達を反映しない。10回という窓は、1セッション内の変動をならしつつ、数セッションの傾向を捉えるバランス点だと言えます。この数字自体が最適化の結果なのか、経験則なのかは製品からは分かりませんが、少なくとも「適応的な難易度調整(adaptive difficulty)」を定量パラメータで実装している例として読めます。
設定は「飾り」ではなく「効果を左右する変数」
設定は自分の目に合わせます。壁メニューと手首メニューから構成:
- 弱い目 — 左右どちらか(間違えると臨床効果が逆転します)
- 重症度 — 軽度・中等度・重度(ターゲットの大きさ、速度、ステージ長に影響。重度ではターゲットが大きく遅く、単眼作業が長くなる)
- 斜視 — 内斜視・外斜視(Stage 4の視差と輻輳シフトを調整)
自動モードが推奨で、カスタムモードは手動の単眼・両眼・融合トグルを扱える上級者向けです。
「弱い目」の設定を間違えると臨床効果が逆転する、という一文が重い。普通のアプリなら設定ミスは「体験が少し悪くなる」程度です。ここでは設定が介入そのものを反転させうる。だからこそ、自動モードがデフォルト推奨になっている必然性がある。パーソナライゼーションを、設定画面の飾りではなく、本質的なパラメータとして扱っている好例です。
エンジニアとして持ち帰れる三点
エンジニアやプロダクト開発者として見ると、この設計には学べる点があります。第一に、リハビリテーションや認知トレーニングのような「退屈で離脱しやすい」領域に対して、ゲームループと臨床プロトコルを同じ状態機械に統合していること。第二に、パーソナライゼーションを設定画面の飾りではなく、誤設定が効果を反転させる本質的なパラメータとして扱っていること。第三に、進行ゲートを定量化(70%/40%/80%)し、介入の強度をデータで管理していること。
これは、ヘルスケアや教育のような「効果が遅れて現れる」ドメインのプロダクト全般に効く視点です。ユーザーを離脱させないことと、効果を出すことは、しばしば別の設計問題として扱われます。AmblyoPunchはそれを一つのループに畳もうとしている。だからSupernaturalの話からここに着地したくなるのです。
最後に大事なこと。AmblyoPunchはトレーニング/支援型ゲームであり、医療機器でも治療でも治癒でもありません。眼科専門家の指導を補完するもので、決して置き換えません。臨床的な判断は必ず専門家に。これはプロダクトの位置づけとして明確にしておくべき線引きです。
パッチの向こう側に、遊びがある。
https://www.meta.com/en-gb/experiences/amblyopunch/1239507485902689/
Top comments (0)