You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When examining some event traces with v-sync off, timing looks reasonable -- we get pose state just before rendering starts, with fresh tracker data arriving just before that.
With v-sync on, our updates look like they're happening at the wrong time. Here you can see the GetState calls are happening after rendering has already started.
Ideally we want to be updating our poses as late as possible before rendering (see http://docs.unity3d.com/Manual/ExecutionOrder.html). We're currently doing this in DisplayController::OnPreCull (https://github.com/OSVR/OSVR-Unity/blob/master/OSVR-Unity/Assets/OSVRUnity/src/DisplayController.cs#L212).
When examining some event traces with v-sync off, timing looks reasonable -- we get pose state just before rendering starts, with fresh tracker data arriving just before that.
![image](https://cloud.githubusercontent.com/assets/10972018/9996639/eb319efc-6055-11e5-8df7-2270147e96ed.png)
With v-sync on, our updates look like they're happening at the wrong time. Here you can see the GetState calls are happening after rendering has already started.
![image](https://cloud.githubusercontent.com/assets/10972018/9996705/42f6c1b2-6056-11e5-9743-369b2bd928b4.png)
Taking a look at the Unity profiler indicates that with v-sync on, a lot of time is spent waiting (WaitForTargetFPS). It would be helpful to know when this waiting occurs in execution order, and if it's possible to keep updating in the background while waiting. I have an open question on this: http://answers.unity3d.com/questions/1068128/when-does-waitfortargetfps-actually-wait-in-execut.html
Does anyone have insight into this v-sync problem or see some possible solutions?
More event traces: http://imgur.com/a/uQDed
The text was updated successfully, but these errors were encountered: