WIP: vblank_notification #70

Closed
rdunnington wants to merge 0 commits from vblank_notification into main
Collaborator

Still need to properly do shutdown.

Still need to properly do shutdown.
Collaborator

Unfortunately this stutters a lot on my macbook, with both integrated and discrete graphics
it seems like the CVDisplayLink callback is called sometime before actually switching surfaces, not right after switching surfaces. So depending on the time it takes to pick the event from the queue and draw stuff, you can miss a surface swap, and the surface gets queued instead of presented (And next time you have a one too many surfaces, so one of them apparently gets skipped).

Unfortunately this stutters a lot on my macbook, with both integrated and discrete graphics it seems like the CVDisplayLink callback is called sometime before actually switching surfaces, not right after switching surfaces. So depending on the time it takes to pick the event from the queue and draw stuff, you can miss a surface swap, and the surface gets queued instead of presented (And next time you have a one too many surfaces, so one of them apparently gets skipped).
Collaborator

Compared to triple buffering here:

Compared to triple buffering here:
MartinFouilleul changed title from vblank_notification to WIP: vblank_notification 2023-08-29 16:14:01 +00:00
Author
Collaborator

I'll close this PR for now in favor of the temp changes where we block on the debug surface. I can open a new one later if we decide to go with this approach in the long run.

I'll close this PR for now in favor of the temp changes where we block on the debug surface. I can open a new one later if we decide to go with this approach in the long run.
rdunnington closed this pull request 2023-08-30 03:17:23 +00:00

Pull request closed

Sign in to join this conversation.
No reviewers
No Label
macOS
windows
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: hmn/orca#70
No description provided.