「公式」が消えた夜、僕はアイパッチを思い出した——標準の移ろいと、仕様で守る両眼視トレーニング
深夜0時を回った自宅のデスク。モニターの明かりだけの部屋でHacker Newsを開くと、トップにこんな投稿があった。「Apple/macOSがThe Open Groupの公式Unixレジストリから削除された」。158ポイント、159コメント(元スレ)。
標準は、音もなく変わる。
その一行を読んだ瞬間、僕の脳裏に浮かんだのは、認証の話ではなかった。8歳の夏、右眼に貼られた肌色のアイパッチだ。肌に張り付く粘着テープの感触。剥がすときの、かすかな痛みと皮膚が赤く残る跡。母が「がんばれよ」と言って貼ってくれたあの朝の、台所の蛍光灯の音。
「金標準」だったアイパッチと、その限界
弱視(lazy eye)の治療標準は、長らく遮閉療法だった。良いほうの目を塞ぎ、弱い目を無理やり働かせる。蒸れる。かゆい。給食の時間には「海賊みたい」と笑われた。何よりつらかったのは、パッチを外してもキャッチボールが下手なままだったことだ。ボールの距離感が、どうしてもつかめない。バットに当たっても、フライなのかライナーなのか、判別が遅れる。チームメイトの「次、行けよ」という声だけが、耳に残った。
後になって知った。パッチは弱視眼を単独で鍛えるだけで、両眼が協調してひとつの立体的な世界を作り上げる力——両眼視——までは訓練しないのだと。それは「標準」というラベルの重さとは別の、仕様上の限界だった。片目ずつ見えるようになっても、二つの像を脳が統合しなければ、世界は平面のままだ。奥行きは、協調からしか生まれない。
Questを被った夜
先月、エンジニア仲間のデスクでMeta Questを借り、AmblyoPunchを起動した。ヘッドセットの重量が頬骨に乗る感覚。レンズの向こうに広がる最初の世界は、静かな村だった。風の音がして、ガボールパターン(Gabor pattern)のコインがふわりと飛んでくる。視覚科学でコントラスト・方位・微細ディテールの処理を駆動するために使われる、あの方向づけ縞刺激だ。空間周波数、コントラスト、位相——パラメータがコードレベルで固定され、誰がいつプレイしても同じ刺激が再現される。
拳を振り上げてパンチする。赤いスパイクが来たら頭を下げてかわす。ハートは3つ。全部失えばリスタート。6DoFトラッキングで頭の動きがそのまま視差に反映されるから、自然と首を動かしてターゲットを追う。コントローラーなし、ハンドトラッキングだけで完結するインタラクション設計。視線と手の協調そのものが、訓練の一部になっている。
素朴に、楽しかった。あの夏のパッチに「楽しい」は一度もなかったから、それだけで少し驚いた。汗ばんだ額の感触も、ヘッドセットの締め付けも、不快ではなかった。夢中になっていたからだ。
ラベルではなく仕様で守るということ
技術者として感心したのは、内部設計の誠実さだ。AmblyoPunchの中核は4段階のダイコプティック(左右目別提示)プランで、Automaticモードが自動進行する。この「自動進行」という言葉の裏には、曖昧なヒューリスティックではなく、明確な状態機械と閾値判定がある。
単眼ウォームアップ:ターゲットは弱視眼にのみ提示。優位眼との競合なしに追視と注意を育てる。この段階では対眼抑制を回避し、弱視眼の単独応答を確立させる。
抑制解除:両眼にターゲットを出しつつ、優位眼側を大幅に減衰・ウォッシュアウトし、脳に弱視眼の入力を優先させる。コントラスト比を非対称に設定することで、抑制スコトマを機能的に「開く」。
再調整:優位眼の明瞭度をサブステップで徐々に戻し、バランスが戻る間も弱視眼を働き続けさせる。ここが一番の工夫だと思う。急に戻せば再抑制が起きる。ゆっくり、段階的に。ステップサイズ自体がパラメータ化されている。
融像訓練:パナム融像領域(Panum's fusion area)内の微小な像のずれで、脳が二つの像をひとつの立体知覚へ融合するよう鍛える。水平視差だけでなく、輻輳シフトも内斜視・外斜視の型に合わせて調整可能だ。
進行は完全な実力制だ。ローリング10試行ウィンドウで正答率70%以上が前進条件、40%未満なら降格。斜視プロファイルでは最終融像へ進むのに80%以上が求められる。この閾値設計、実にエンジニア的だ。移動平均ウィンドウでノイズを吸収し、ヒステリシス(前進70%・降格40%)でチャタリングを防ぐ。状態遷移図を引けば、きれいな有限オートマトンになる。
個別化も細かい。弱視眼の左右(選び間違えると臨床的効果が逆転する)、重症度(標的サイズ・速度・ステージ長)、内斜視・外斜視の型(ステージ4の視差と輻輳シフト)まで設定で調整できる。専門家向けのCustomモードもあるが、基本はAutomatic推奨だ。パラメータ空間を露出しすぎず、デフォルトで「正しく動く」設計——これ、CLIツールの設計哲学と同じだ。
Unix認証がOSのAPIの振る舞いを保証していたように、AmblyoPunchは刺激条件をコードレベルで固定する。空間周波数、コントラスト、位相差、進行閾値。誰がいつプレイしても同じ刺激が再現される。認証ラベルではなく、仕様によって訓練を守る設計だ。OSSで言う「再現可能なビルド」に近い思想を感じる。
70%の壁と、静かな希望
正直に言うと、最初の一週間、僕は70%の壁に何度も弾かれた。ステージ3の再調整フェーズで、優位眼のコントラストが戻ってくるあたりから、急に正答率が落ちる。60%、55%、50%。降格通知が出るたびに、胸の奥がちくりとした。情けなかった。大人になっても、片目の奥の世界はまだ不器用なままだった。寝る前、布団の中で「また明日」と呟く自分がいた。
でも、だからこそ初めて次のステージに進んだ夜——ローリング10試行が71%になった瞬間、画面に「Stage 4: Fusion」の文字が出た夜——小さくガッツポーズをした。パッチの夏にはなかった、「自分の力で上がっていく」という感覚。誰かに貼ってもらうのではなく、自分でヘッドセットを被り、自分で拳を振り上げ、自分の脳が像を融合させていく。その主体性の差は、でかい。
もちろん、これは医療機器ではない。治療でも治癒でもない。眼科専門家の指導を補完する、トレーニング/アシストゲームだ。その線引きを曖昧にしないこともまた、仕様の誠実さだと僕は思う。ドキュメントの冒頭に「医療機器ではありません」と明記し、臨床現場での位置づけを誤認させない。これ、エンジニアとして信頼できるプロダクトの条件だと思う。
「公式」はいつか変わる。Unix認証が消えても、macOSは動き続ける。標準というラベルが剥がれても、仕様としての実装は残る。でも、両目で世界をひとつに見たいという願いは変わらない。もしあなたや、あなたの大切な人が、片目の奥に世界を持て余しているなら——パッチの向こう側の景色を、一度のぞいてみてほしい。
https://www.meta.com/en-gb/experiences/amblyopunch/1239507485902689/
Top comments (0)