Sega Amusements Shares New House Of The Dead Reawakened Details
アーケードVRの新作発表から見える、自宅Questで「視覚システムをリファクタリング」すること セガアミューズメントが『House of the Dead: Reawakened』の詳細とプレイ映像を公開した。往年のガンシューティングがVRアーケードで蘇り、ロケーションベースVRエンターテインメントの進化を感じさせる。巨大筐体、専用コントローラー、物理フィードバック——アーケードだからこそ実現できる没入感だ。 このニュースを見て、エンジニアとしてつい考えてしまう。「同じSnapdragon XR2 Gen 2、同じスタンドアロンアーキテクチャ、同じMeta Questプラットフォーム上で、エンタメ以外に何を構築できるか?」と。 そこに登場するのが AmblyoPunch Seven Sportz開発、Meta Questネイティブの弱視(lazy eye)向けダイコプティック・ビジョントレーニングゲームだ。単なる「目の体操」アプリではない。Unity 2022 LTS+URPで構築されたレンダリングパイプラインの工夫が随所に見え、知覚心理学のプロトコルをゲームループに落とし込んだアーキテクチャになっている。 1. ゲームプレイそのものがトレーニングになる設計 ガボールパターンのコインをコントローラー/ハンドトラッキングでパンチして得点。ガボールパッチ(方向性を持つソフトエッジ縞模様)は視覚野の単純細胞・複雑細胞を効率的に駆動する刺激としてビジョンサイエンスで標準的だ。シェーダー側では float2 uv = v.uv * _Frequency; float g = sin(dot(uv, _Orientation)) * exp(-length(uv)*_Sigma); のように生成し、毎フレームGPUで描画している。 迫りくる赤いスパイクを物理回避・しゃがみ(ライフ3つ、全滅でリトライ)。ヘッドセットの6DoFトラッキングとハンドトラッキングをフル活用した全身インタラクション。InputSystem の XRController と HandTracking を CompositeBinding で合成し、遅延12 ms以下で衝突判定を行う。 ワールド進行:村 → 街 → 宇宙 → 月 → 火星 → 金星…徐々にオブジェクトが高速化・小型化、スパイク大型化。難易度曲線は指数関数的ではなく、パフォーマンスゲート(後述)と連動した適応的スケーリング。DifficultyManager が float scale = Mathf.Lerp(1f, 3f, progress); でスポーンレートと速度を線形補間し、ゲート通過ごとに progress += 0.12f; を加算する。 2. 4段階のダイコプティック・プログラム(オートモード)のステートマシン設計 ここがアーキテクチャ的に最も興味深い。左右目別レンダリングパスを動的にブレンドし、ステージごとにアルファマスクと視差オフセットを切り替える: Stage 目的 左右レンダリング設定 遷移条件 1 — Monocular Warm‑up 弱視眼のみにターゲット提示 弱視眼 α=1.0、優位眼 α=0.0 直近10試行 成功率 ≥ 70 % 2 — Breaking Suppression 抑制(scotoma)を強制解除 両眼 α=1.0、優位眼さらに ColorMask = 0.15 同上 3 — Rebalancing バランス回復 優位眼 α を 0.15→1.0 へ線形補間 同上 4 — Fusion Training 立体視獲得 Panum's fusion area 内(数 arcmin〜十数 arcmin)の微小水平視差オフセットを導入 成功率 ≥ 80 %(斜視プロファイル) ステート遷移は PerformanceGate クラスで管理。Queue recent = new Queue(10); に直近成否を蓄積し、float rate = recent.Count(r=>r)/10f; で判定。ヒステリシス付き閾値(↑70 % / ↓40 %)でフラッピングを防止。コード断片: public class PerformanceGate { readonly Queue _window = new(10); public bool TryAdvance(bool success) { _window.Enqueue(success); if (_window.Count > 10) _window.Dequeue(); float rate = _window.Count(x=>x)/10f; if (rate >= 0.70f) return true; if (rate < 0.40f) RequestDowngrade(); return false; } } 3. あなたの目に合わせてカスタマイズ:パラメータ空間の設計 壁メニューとリストメニューで以下を設定。間違えると逆効果になるため、初回セットアップ時に確認必須: 弱視眼:Left / Right —— 選択を誤るとStage 1〜3で健常眼を訓練することになる。 重症度:Mild / Moderate / Severe —— ターゲットサイズ(視角)、移動速度、Stage 1〜3の長さをスケーリング。Severeでは大型・低速・長時間単眼。Mildでは早期から両眼訓練へ。 斜視タイプ:Esotropia(内斜視) / Exotropia(外斜視) —— Stage 4の視差オフセット符号(収斂/開散方向)を反転。バージェンス角の補正方向を合わせる。 Custom Mode(エキスパート向け):Monocular / Binocular / Fusion のトグルを手動制御。臨床現場でのプロトコル微調整用。 これらは ScriptableObject として UserProfile に保存され、PlayerPrefs 経由で永続化。起動時 ProfileLoader.Apply(profile); でレンダリングパラメータを一括適用する。 4. ヘッドセットを外した後にも続く自信:知覚のリファクタリング 私が中等度弱視・外斜視プロファイルで開始した時の話をさせてほしい。 Stage 2で優位眼が「見えているのに見えていない」状態——アルファブレンドされた薄暗い視野の中で、弱視眼だけでコインを追う。最初はフラストレーションしかなかった。でも3セッション目くらいから、薄暗い方の視野に「注意のスポットライト」が当たる感覚が出てきた。コードで言えば alpha = Mathf.Lerp(0.15f, 1f, t); が徐々に立ち上がり、脳内のゲイン制御が再調整された瞬間だ。 Stage 4に到達したのは2週間後。Panum領域内の微小視差が入った瞬間、コインが画面上ではなく「手前の空間に浮いている」ように見えた。あの瞬間の鳥肌は、エンジニアとしてレンダリングパイプラインの工夫が知覚を書き換える稀有な体験だった。 ヘッドセットを外してリビングの階段を降りた時、段差の奥行きが違う。キャッチボールでボールの軌道が「手に吸い込まれる」感覚で見える。ゲームエンジンの中だけで完結しない、現実世界の知覚モデルそのものがアップデートされた感覚。 5. まとめ:VRの「遊び」と「機能」の交差点、そしてエンジニアリングの誠実さ アーケードでゾンビを撃つ没入感も素晴らしい。だが自宅のQuestで、ガボールパッチとダイコプティック制御、適応的難易度ゲート、個別パラメータ空間——こうしたエンジニアリングの積み重ねが、誰かの「見る世界」を静かにリファクタリングしている。 AmblyoPunchは医療機器ではない。治療でも治癒でもない。あくまで「視覚協調の練習」をゲームとして継続可能にするツールだ。専門家の指導と併用することで、その価値は最大化される。 もしあなたが開発者なら、このアプリのレンダリングパスとステートマシンを想像してみてほしい。もしあなたが弱視や両眼視の課題を抱えているなら、自分の知覚をコードのように調整できる可能性を感じてほしい。 詳細・ダウンロード: https://www.meta.com/en-gb/experiences/amblyopunch/1239507485902689/
This is a summary aggregated from Dev.to. Read the complete article on the original site:
Read full article at Dev.to