This has been driving me crazy. The frame rate of my application is high. In VR it is easily maxing out the device’s refresh rate (I’m using a Pimax 8KX). But I find that if I keep my head still what I see in the display is not animating smoothly (again even though I see the frame rate is high based on how many times xrEndFrame is getting called.
But if I move my head slightly everything looks smooth.All I can think of is that maybe something is preventing my rendered frames from being displayed because of something to do with tracking? I’m creating a seated experience so I have no 6DOF just head rotation. Any ideas?
hi @Cecil
Still not an OpenXR nerd.
It sounds like a problem in this family: I draw & edit points in d2. Dragging a point happens in a continous loop executing drag(dX,dY). dXdY = cursorPosition - cursorPositionOld . If you don’t set the two positions to the same position at mouse-down, you’ll get a large jump in the drag.
It may be far away from your problem, but there’s something about your description of the symptoms …
Or, you could have placed a variable the wrong place in the sense that it’s defined over and over again, starting at a default value instead of maintaing some value continously.
That would be moving objects and not fixed background.
Do they maintain a general path but skips something and jumps forward or do they return to start?
They move according to some algorithm, very likely with some timer-dependant variable involved. They use your view-matrix too, but error here would influence the whole scene.
Is the timer-variable refreshed even though you don’t move your head? In opengl you are in charge of the main-loop that usually calls drawing/swap-buffers at end and detects hardware-input/changes (poll-events) at start of next loop. One can choose to loop without either of the two for some specific task. I suspect that swap-buffers are called more often than poll-events …