Menu

#148 Frameskip aligned vsync

Next Release
open
nobody
Other (64)
5
2005-07-18
2005-07-18
aabyssx
No

When using frameskip 1 and vsync the frames should
be aligned to every second monitor update.
This way constant time will elapse between frame
updates and will result in very-very smooth update even
with framedrop (like in the Xbox port of VBA).

For example at 60 Hz monitor update frameskip 1 will
result in constant 30 Hz and frameskip 2 will result in
constant 20 Hz.
30 and 20 are divisibles of 60 so synchronizing to
0,2,4,6... vertical retraces when frameskip is 1 and
0,3,6,9... vertical retraces when frameskip is 2 will mean
discrete update periods.

Currently using frameskip results immediately in terrible
tearing because the frames do not seem to apear at
discrete periods.

Example with frameskip 1 and 60 Hz monitor update:

problem:
0,1,2,3,4,5,6,7 (monitor update)
0,0,2,2,2,4,6,6 (vba frame update)
Frame 2 is displayed longer and frame 4 just half as
long as it should be.

solution:
0,1,2,3,4,5,6,7 (monitor update)
0,0,2,2,4,4,6,6 (vba frame update)
All frames are displayed for the same time period.

Hope this will help. ;)

Discussion


Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.