2016-07-29 27 views
2

Ich bin neu mit directx und openvr, und versuche, mich um die Funktionsweise der OpenVR Compositor API zu wickeln. Die Dokumentation ruft auf, jedes Auge zu rendern und jedes über Submit() dem Compositor zu übergeben. Aber ich bin ein wenig verwirrt darüber, wie Present() in diesen Fluss eingeht. Ich habe erwartet, dass ich Present() aufrufen muss, um jedes Auge zu rendern, aber wenn ich einige existierende VR-Spiele untersuche, passiert das nicht. Present wird aufgerufen, um eine Ansicht auf dem Hauptmonitor (ohne VR) zu rendern, wird aber für das vom Compositor gezeichnete Material überhaupt nicht aufgerufen.Wer ruft Present() (wenn jemand) bei der Verwendung von Steam OpenVR?

Ruft jemand anders Present() oder etwas niedriger Ebene?

Antwort

2

Vorhanden ist in einer traditionellen Swap-Kette in einem Fenster auf dem Bildschirm anzuzeigen. Da Sie mit VR ein alternatives Mechanisum und eine API verwenden, um das Bild dem HMD zu präsentieren, benötigen Sie kein Present.

Sie benötigen nur eine, wenn Sie eine Kopie oder etwas anderes auf dem Monitor neben dem HMD anzeigen möchten.