Zustände trennen Synchronisation, Sichtbarkeit, Eintritt, Stopp und Sitzungsverlust. Erfahren Sie, wie Sie Abstürze und GPU-Verschwendung vermeiden.
Direkte Antwort
OpenXR definiert acht Lebenszykluszustände für eine Sitzung, von IDLE bis EXITING. Bei SYNCHRONIZED behält die Anwendung die Frame-Schleife bei, kann jedoch ein umfangreiches Rendering vermeiden. in VISIBLE wird das Rendern fortgesetzt, ohne XR-Eingaben zu empfangen; in FOCUSED erhält es auch Eingaben. STOPPING ruft zum Schließen der Schleife und xrEndSession auf, während LOSS_PENDING dazu aufruft, die Sitzung zu zerstören und gegebenenfalls System- und Grafikressourcen neu zu erstellen.
Sichtbar bedeutet nicht interaktiv
Ein System-Popup kann die Szene sichtbar halten und den Fokus entfernen. Die Anwendung muss Aktionen anhalten und inaktive Eingabe-Avatare ausblenden, ohne die Szene zu löschen.
Mit der Synchronisierung können Sie GPU sparen
Die Frame-Schleife wird fortgesetzt, aber ShouldRender kann angeben, welche Ebenen nicht gesendet werden müssen. Schwere Arbeit konkurriert in diesem Zustand um Ressourcen ohne visuellen Nutzen.
STOPPING ist ein Protokollbefehl
Das Ignorieren des Ereignisses und das Fortsetzen des Renderns können Übergänge blockieren. Verlassen Sie die Schleife und beenden Sie die Sitzung in der erwarteten Reihenfolge.
Der Verlust einer Sitzung erfordert eine kontrollierte Rekonstruktion
Durch den Verlust der Displayverbindung werden die Handles unbrauchbar. Systemabhängige Ressourcen müssen zerstört und neu geschaffen werden, ohne dass eine unsichtbare Wiederaufnahme versprochen wird.
Nexus-Lesung
Modellieren Sie jeden Zustand explizit, zeichnen Sie Übergänge auf und testen Sie Ruhezustand, Modalität, Headset-Entfernung, App-Wechsel und Hardwareverlust in jeder unterstützten Laufzeit.
FAQ
Wann erhält die Anwendung XR-Eingaben?
Im FOKUSSIERTEN Zustand; VISIBLE zeigt die Szene, macht die Aktionen jedoch nicht eingabebereit.
Soll ich die Frame-Schleife bei SYNCHRONIZED stoppen?
Nein. Es sollte synchron bleiben, um schwere Arbeit zu vermeiden, wenn kein Rendern erforderlich ist.
Kann LOSS_PENDING wiederhergestellt werden?
Die Anwendung kann die Sitzung zerstören, ein neues System abfragen und Ressourcen neu erstellen, wenn der Kontext dies zulässt.
Wichtige Leitfäden, um tiefer in die Entscheidung einzutauchen
Diese redaktionelle Analyse wurde von Nexus anhand der unten aufgeführten offiziellen Quellen erstellt und am 24. Oktober 2026 konsultiert. Der Text ist original und interpretiert praktische Implikationen für Unternehmen.
- Khronos – XrSessionState: Zustände, Semantik, Frame-Loop, Fokus, Stopp und Wiederherstellung.
- Khronos – OpenXR-Spezifikation: normativer Vertrag für Laufzeit, Sitzungen, Ereignisse und Rendering.
Von der Hauptquelle gemeldetes Datum: OpenXR 1.1.65, konsultiert am 24. Oktober 2026; technische Musteranalyse.

