Werbung
Neben DirectX 12 und G-Sync ist NVIDIA im Zusammenhang mit dem heutigen Tag auch noch ein drittes Thema wichtig, zu dem es Neuigkeiten gibt. Dabei geht es um das Lieblingsthema vieler Hersteller, virtuelle Realitäten oder kurz VR. Den dazugehörigen Herausforderungen durch die Anforderungen an die Leistung einer Grafikkarte hat NVIDIA bereits häufiger angesprochen, heute nun aber geht es um einige Tricks die angewendet werden, um eine möglichst hohe Leistung zu erreichen.
Dazu stellt man den Entwicklern von Spielen und Engine eine API namens GameWorks VR zur Verfügung, die einen einfachen und schnellen Zugriff auf einige der Technologien ermöglichen soll, die im Zusammenhang mit VR eine Rolle spielen.
Zunächst einmal aber wollen wir erläutern, warum VR andere Anforderungen stellt, als dies bei einer klassischen Ausgabe über ein 2D-Display der Fall ist. Damit der Nutzer einer VR-Brille überhaupt in der Lage ist auf einer Brille und den darin verbauten Displays etwas zu sehen, wird eine Optik verwendet, die das Bild entsprechend dem Betrachtungsabstand und gewünschten Blickwinkel anpasst. Die Ausgabe auf dem Display erfolgt daher in einer Fishseye ähnlichen Verzerrung und zudem wird das Bild an den Rändern auch noch gestaucht, damit nach der Optik ein für den Nutzer normalen und unverzerrtes Bild entsteht.
NVIDIA GameWorks VR
Da GPUs und die Rendering-Prozesse aber nicht darauf ausgelegt sind ein solches Bild auszugeben, gehen die Hersteller hin und rendern das Bild auf gewöhnliche Art und Weise, um es in einem Post-Processing entsprechend anzupassen. Diese nachträgliche Bearbeitung kostet zum einen Leistung, viel entscheidender aber ist, dass eine weitere Verzögerung bis zur Ausgabe des Bildes entsteht und gerade diese ist für ein möglichst optimales VR-Erlebnis störend.
NVIDIA GameWorks VR
Durch die Beschneidungen und Stauchungen an den Rändern des Bildes kommt es auch dazu, dass auf der GPU Pixel berechnet werden, die in der späteren Ausgabe durch die Anpassung gar nicht sichtbar sind. Schon während eines traditionellen Rendering-Prozesses wird darauf geachtet, dass solche nicht sichtbaren Bereich im Verlaufe des Renderings komplett ausgeblendet werden. Da GPUs VR-Techniken und daran anknüpfende Methoden bisher nicht kannten, können sie diese Anforderungen auch noch nicht erfüllen.
NVIDIA wendet nun einen Trick an, um die nicht oder nur eingeschränkt sichtbaren Bereiche anders zu behandeln. Dazu wird das Bild in neun Bereiche aufgeteilt. Diese sogenannten Viewports orientieren sich in etwa an den sonst im Post-Processing bearbeiteten Abschnitten. So wird der mit Abstand größte Viewport in der Mitte fast vollständig so belassen, wie er ursprünglich auch behandelt wurde. Die Seitenbereiche und vor allem die vier Ecken aber werden mit einer Art Komprimierung belegt und in ihrer Auflösung entsprechend dem gewünschten Endergebnis angepasst.
NVIDIA GameWorks VR
Alle neun Viewports werden gleichzeitig durch die GPU berechnet - allerdings getrennt voneinander. Die Ausgabe erfolgt schlussendlich in einer bereits fertig angepasst Form. Ein Post-Processing ist damit nicht mehr notwendig. Durch die Aussparung von nicht sichtbaren Bereichen sowie der Anpassung der Auflösung der Ränder und einer zusätzlichen Komprimiereng kommt NVIDIA auf eine erhöhte Pixel-Shader-Performance um den Faktor 1,3 bis 2. Während die Aussparung und Anpassung aufgrund der ohnehin notwenigen optischen Anpassung keinerlei Problem darstellen, waren wir im Hinblick auf die Komprimierung zunächst skeptisch. Wir konnten das Verfahren mit unterschiedlichen Komprimierungsfaktoren und auch mit ausgeschalteten Komprimierung im Zusammenspiel mit einer Oculus Rift Crescent Bay testen und stellten keinerlei Unterschiede in der Darstellunsqualität fest. Weder im Blindtest, noch wenn wir genau wussten das die Komprimierung nun aktiv war, waren für uns Differenzen sichtbar.
Die Verarbeitung unterschiedlicher Viewports in einem Rendering-Prozess ist laut NVIDIA nur auf GPUs mit "Maxwell"-Architektur möglich. Vermutlich ist damit die 2. Generation der aktuellen Architektur gemeint, denn die 1. Generation wäre ohnehin nicht ausreichend leistungsstark, um das VR-Quelle in Frage zu kommen.
VR wird in diesem Jahr noch eine größere Rolle spielen. AMD konzentriert sich mit LiquidVR ebenfalls auf diesen Bereich und bietet spezielle Soft- und Hardware-Features. Gegen Ende des Jahres soll die HTC Vive auf den Markt kommen und Anfang 2016 wird die Consumer-Version der Oculus Rift erwartet. Spiele wie Project CARS und Star Citizen sind bereits heute auf VR ausgelegt und werden sicher dazu beitragen, dass VR schnell Fuß fassen wird.