﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	blockedby	blocking	notify_on_close	platform	project
964	Mirror VR on desktop display	Tom Goddard	Tom Goddard	"Would like to mirror the view from a virtual reality headset in the ChimeraX graphics window.  There is an option for this in the vr command (""mirror true""), but it can cause stuttering.  Currently I use the SteamVR mirror display window.  But it would be simpler for the user if the main graphics window updated.

I would expect the ""mirror true"" option to always cause stuttering because OpenGL syncing to the 60 Hz desktop display causes the 90 Hz headset updates to drop frames.  But tests show it does not appear to drop frames for simple scenes (p97 binding site) but does drop frames for complex scenes (ribosome antibiotic).  I think if I could set the OpenGL swap interval (e.g. with wglSwapIntervalExt(0)) then OpenGL would not sync to the desktop display and mirroring should minimally slowdown the VR headset.  Unfortunately the needed extension does not work in PyOpenGL 3.1.1 due to Python3 bytes versus string issues.  This is a bug in PyOpenGL.  It does not look like PyOpenGL is well maintained (last change 6 months ago, only one developer).  Qt5 also can set the swap interval using QSurfaceFormat.setSwapInterval().  But it does not appear the swap interval can be changed after creating the OpenGL context and the graphics window from the Qt5 interface.
"	enhancement	closed	moderate		Graphics		fixed						all	ChimeraX
