Asynchronous Spacewarp 2.0: Oculus Rift interpoliert jetzt schlauer
Oculus VR hat eine neue Version des Asynchronous Spacewarps veröffentlicht, der die Darstellung der Oculus Rift (S) weiter verbessern soll, wenn das 90-Fps-Ziel nicht erreicht wird. Gegenüber AWS 1.0 werden neben den Farb- auch die Tiefeninformationen zur Interpolation neuer Frames herangezogen. Die Integration von Positional Timewarp erlaubt größere Freiheiten bei der Bewegung.
Im Bereich von PC-Monitoren sind Fps-Drops und daraus resultierend Ruckler zwar nervig, aber verschmerzbar. Bei Virtual-Reality-Brillen stellen diese ein echtes Hindernis dar, weil sie die sogenannte Motion-Sickness fördern. Ist das Bild nicht flüssig, fühlt sich der Nutzer schlecht. Oculus VR und Valve, die zwei größten VR-SDK-Entwickler, arbeiten deshalb an Techniken, um Frame-Drops erträglicher zu machen. Denn absolut stabile 90 Fps für die 90-Hertz-Displays der Oculus Rift (S) und HTC Vive (Pro) werden selten erreicht.
Asynchronous Spacewarp wird intelligenter
Die Oculus Rift hat bisher Asynchronous Spacewarp (ASW) genutzt: Brauchte die Berechnung eines Frames länger als 11,11 Millisekunden (90-Fps-Ziel), wurden anhand der Head-Tracking-Daten und der vorherigen Frames neue Bilder interpoliert und anstelle der echten, zu spät berechneten Frames eingefügt. Das funktionierte bisher nur mit sogenanntem 3DoF, also drei Freiheitsgraden in Form von Kopfdrehungen sowie -neigungen, und erzeugte unter bestimmten Umständen zu Grafikartefakten. Valve unterstützte früher Asynchonous Reprojection, das mit der Angleichung an Oculus VRs Funktionsumfang in Motion Smoothing umbenannt wurde.
Asynchronous Spacewarp 2.0 zieht nun die Daten von Positional Timewarp (PTW) mit ein. Effektiv heißt das: Neben Head- können auch Positional-Tracking-Daten verrechnet werden (6DoF). Oder anders ausgedrückt: Bei der Interpolation künstlicher Frames schätzt AWS 2.0 nicht mehr nur ab, wohin der Nutzer schauen, sondern auch wohin er sich bewegen wird. Darüber hinaus bezieht die Funktion die Tiefeninformationen ein, wodurch Grafikartefakte gemildert werden sollen. Als Beispiel nennt Oculus VR ein Zebra hinter einem weißen Zaun: Vorher wären der Zaun und die weißen Streifen miteinander verrechnet worden. Durch die Tiefeninformationen weiß die Anwendung, dass es sich um getrennte Objekte handelt.
Expliziter Support erforderlich
Die Übermittlung der Tiefeninformationen erfordert eine explizite Unterstützung seitens der Anwendungen beziehungsweise Spiele. Oculus VR geht davon aus, dass dies kein großes Problem darstelle. Die meisten Entwickler, welche die Unreal Engine 4 oder Unity und das Dash-Interface nutzen, würden die nötigen Buffer schon offenlegen.
