跳到正文
DEV Community· Ashish·· 3 小時前AI 評分36

Meta 將大學美式足球賽帶到 Quest,承諾明年直播逾 100 場體育賽事

Meta Brings Immersive College Football to Quest, Promises 100+ Live Sporting Events Next Year

AI 導讀

Meta 宣佈透過 Quest TV 直播 180° 大學美式足球賽,並承諾明年帶來逾 100 場體育賽事。文章亦介紹 Amblyotube 如何利用 Quest 的雙眼顯示及 AI 圖像處理進行弱視訓練;該應用程式定位為輔助訓練,並非醫療產品。

正文

Wenn Meta Live‑Sport in VR bringt und dieselbe Technologie dein Sehen trainiert

Meta hat angekündigt, College Football 180° Live über Quest TV zu streamen – 100 + Shows ab 10. Oktober und weitere Veranstaltungen folgen in 2026 mit den neuen Meta‑VR‑Gläsern. Das ist ein klarer Dropshot für die VR‑Entertainment‑Industrie. Ich habe jedoch bemerkt, dass ich die gleiche Hardware nutzen kann, um mein lazy eye (Amblyopie) zu verbessern.


Der Abend, an dem alles klickte

Es war ein Dienstagabend im November. Ich saß in meiner Wohnung in Kreuzberg, die Quest 3 auf dem Kopf, und starrte auf ein virtuelles Fußballfeld. Nicht weil ich Football-Fan bin – ich verstehe die Regeln bis heute kaum –, sondern weil ich seit drei Wochen versuche, mein rechtes Auge wieder an die Arbeit zu bringen.

Amblyopie, seit der Kindheit. Das klassische Pflaster-Therapie-Ding mit sechs Jahren: zwei Stunden am Tag, Piraten-Look, Tränen, Wut. Hat nicht geklappt. Mit 34 hat man angeblich keine neuroplastische Reserve mehr. Zumindest sagt das die Lehrmeinung.

Aber ich bin Entwickler. Ich lese Papers. Ich sehe Unity-Shaders, wo andere "Magie" sehen.


Was Amblyotube technisch eigentlich tut

Die App nutzt die stereoskopische Natur der Quest-Brille – zwei getrennte Displays, zwei getrennte Render-Pipelines, eine pro Auge. Das ist der Schlüssel. Kein Red-Blue-Anaglyph-Gefummel, kein Polarisations-Filter, der Helligkeit frisst. Echte binokulare Präsentation.

Blur-Shader auf dem dominanten Auge. Ein simpler Gauss-Blur, konfigurierbar über UI-Slider (Radius 0.5–4.0 Pixel, je nach Schweregrad). Das dominante Bild wird entschärft, nicht ausgeblendet. Wichtig: Der Kontext bleibt erhalten. Das Gehirn bekommt noch räumliche Information, nur nicht die scharfen Kanten, an denen es sich sonst "festbeißt".

AI-Sharpener (MFBF – Monocular Fixation in a Binocular Field) auf dem schwächeren Auge. Hier wird's interessant. Ein leichtgewichtiges MobileNet-Modell (quantisiert auf INT8, ~12 MB) läuft on-device. Es detektiert menschliche Silhouetten in Echtzeit – 30 FPS auf der XR2 Gen 2. Die detektierten Figuren erhalten:

  • Roten Outline (Sobel-Filter auf Alpha-Kanal, 2px Breite)
  • Gelb-grünes Highlight (additive Blend, HSL 85°/90%/60%)
  • Pulsierendes Flicker (Sinusoidal, 4 Hz, 15% Amplitude)

Warum 4 Hz? Literatur zeigt, dass niedrige Frequenzen die kortikale Erregbarkeit im V1 modulieren können, ohne photosensitive Risiken. Die Farben? Rot/Grün-Kontrast maximiert die L/M-Zapfen-Stimulation getrennt für jedes Auge.

Fusion-Cues. Magenta-Punkt (R+G, kein Blau) im schwächeren Auge, grauer Punkt (gleiches Luminanz-Level) im dominanten. Diese "Nonius-Linien"-Äquivalente zwingen das Gehirn zur Vergence. Wenn du beide Punkte als einen wahrnimmst – fusioniert – hast du binokulare Lock-In.


Die Pipeline unter der Haube

Unity 2022.3 LTS, URP, Single-Pass Instanced Rendering. Aber: Dual-Eye-Custom-Pass.

// Simplified CustomRenderPass for per-eye post-processing
class AmblyopiaPass : ScriptableRenderPass
{
    Material blurMat, sharpMat;
    RenderTargetIdentifier[] eyeTargets = new RenderTargetIdentifier[2];

    public override void Execute(ScriptableRenderContext context, ref RenderingData data)
    {
        var cmd = CommandBufferPool.Get("AmblyopiaPass");

        for (int eye = 0; eye < 2; eye++)
        {
            var src = eyeTargets[eye];
            var dst = GetTemporaryRT(eye);

            // Eye 0 = dominant (blur), Eye 1 = weak (sharpen + AI)
            var mat = (eye == 0) ? blurMat : sharpMat;

            // AI texture injected via Shader.SetGlobalTexture
            if (eye == 1) cmd.SetGlobalTexture("_AISegmentMask", aiMaskRT);

            Blit(cmd, src, dst, mat);
            Blit(cmd, dst, src); // back to eye buffer
        }
        context.ExecuteCommandBuffer(cmd);
        CommandBufferPool.Release(cmd);
    }
}

Der Trick: XRDisplaySubsystem.running liefert die Eye-Texturen getrennt. Single-Pass Instanced rendert die Scene einmal, aber der Custom-Pass bricht die Instanzierung auf – zwei separate Blits, zwei separate Materialien. Cost: ~0.8 ms GPU pro Frame auf Quest 3. Bleibt Headroom für 72/90 Hz.

Der AI-Sharpener läuft asynchron auf dem Hexagon DSP via TFLite Delegate. Kein Main-Thread-Stall. Die Segmentations-Maske wird als R8-Textur in den Sharpener-Shader gepumpt. Unitys AsyncGPUReadback holt die Detektions-Bounding-Boxes für UI-Overlay (Debug-Mode nur).


Mein erstes echtes Training

Zurück zu jenem Dienstag. Ich hatte die Blur-Stärke auf 2.3 gesetzt – empirisch, nach einer Woche Herantasten. Zu hoch: Schwindel. Zu niedrig: Dominantes Auge übernimmt wieder.

Ich startete ein YouTube-Video in der Quest-Browser-App. Ein Coding-Stream, 4K, 60 FPS. Die App legt sich systemweit über das Bild – Android-Overlays machen's möglich. Plötzlich hatte der Streamer einen roten Outline. Seine Hände leuchteten gelb-grün beim Tippen. Der magente Punkt schwebte über seiner Tastatur.

Ich spürte es nach zwölf Minuten. Ein Ziehen hinter dem rechten Auge. Nicht schmerzhaft – arbeitsam. Wie Muskeln nach dem ersten Training seit Jahren.

38 Minuten später: Der graue Punkt und der magente Punkt verschmolzen. Nicht perfekt. Aber stabil für vielleicht drei Sekunden.

Ich habe gelacht. Allein in der Wohnung. Mit einer VR-Brille auf dem Kopf.


Was das für uns bedeutet

Nicht "Heilung". Die App verspricht das nicht. "Ergänzendes Training, ab 13 Jahren, kein Medizinprodukt." Steht im Disclaimer. Ehrlich. Das respektiere ich.

Aber: 30–40 Minuten täglich, während du eh Content konsumierst. Kein separater Termin, keine Praxis, kein Pflaster, das die Haut reizt. Die Hardware liegt ohnehin im Regal – Meta hat gerade 100+ Live-Sport-Events angekündigt, die Quest 3 verkauft sich. Die Installationsbasis ist die Verteilungsplattform.

Für Entwickler: Die Dual-Eye-Pipeline ist dokumentiert (XRDisplaySubsystem.GetEyeTexture). Custom-Passes in URP sind Standard. TFLite auf Hexagon ist dokumentiert (Qualcomm SNPE/TFLite Delegate). Nichts davon ist Magie. Alles zusammensetzbar.


Sechs Wochen später

Mein rechter Auge sieht nicht "normal". Wird es vielleicht nie. Aber: Ich lese Straßenschilder früher. Ich fange Bälle im Beachvolleyball, die ich vorher erst im letzten Moment sah. Die Tiefenschätzung beim Parken – besser.

Die Quest 3 steht jetzt nachts auf dem Nachttisch, nicht im Schrank. Ich nutze sie für Football-Streams (immer noch keine Ahnung von den Regeln), für Coding-Videos, für Musikvideos. Jede Session ist Training. Nebenbei.

Die Technologie war schon da. Meta hat sie für Sport gebaut. Wir nehmen sie uns für etwas anderes.


Mehr Infos: https://www.meta.com/en-gb/experiences/amblyotube/25906906972338493/

來源:DEV Community · dev.to