GameTechDev / PresentMon

Capture and analyze the high-level performance characteristics of graphics applications on Windows.
https://game.intel.com/story/intel-presentmon/
MIT License
1.62k stars 151 forks source link

Question about VR #224

Open xMorioh opened 5 months ago

xMorioh commented 5 months ago

Hello there,

i am wondering if there is a proper way to setup PresentMon either CLI or GUI for VR.

As far as i know any VR game will display inside the VR Headset but also inside a Window on your PC Monitor which is a capture from the games VR eye render either left or right eye depending on the game.

In my Theory at least i think it is not simply possible to capture the Window since it perhaps gets VSync with tripple buffering forced on from Windows OS ?!

So would i need to overlay the GUI to the VR Headsets Displays or is there perhaps a better way ? or can i perhaps get at least some reliable data with the Windowed display like GPU/CPU wait/busy but no proper Display Latency data ?

Would be great to hear back from you guys, and thank you for the great tool :)

JeffersonMontgomery-Intel commented 5 months ago

The short answer is no, this isn't properly supported.

If you target the game process and monitor window, that should work and might be useful as a first level of analysis.

However, it will miss any extra latency to display on the HMD. I think it will also miss any cpu/gpu cost associated with final warping which IIRC is done on a separate process.

xMorioh commented 5 months ago

I guess there is also the concern of VR reprojection, motion smoothing and a whole bunch of other VR specific things in the end that would interfere with proper data readouts.

So it's probably best to check if the game does have a non VR mode and test the games performance itself this way instead, leaving VR rendering out of the equation.

Well this pretty much answered my question, thank you :)