Re: [AD] [WIN] page flipping code summary |
[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
> This is what my patch does, if trip is not allocated by
> create_video_bitmap, it is released and NULLED, so the FLIP_WAIT is used
> (pageflip), if triple buffer is used, FLIP_WAIT is not specified. Er,
> request_video_bitmap, what's that? :)
But create_video_bitmap() doesn't actually allocate anything, at least for
the fullscreen driver ! The function simply reuses the three surfaces
allocated by gfx_directx_create_surface() when the primay surface was
created. (Aren't you the author of this rather clever trick ?)
So, either for page flipping or triple buffering, backbuffersurf *and*
tripbuffersurf are pointing to existing DirectDraw surfaces. And you can't
use (tripbuffersurf != NULL) as a valid test to enable or disable the
DDFLIP_WAIT flag.
And request_video_bitmap() is the non-blocking equivalent of
show_video_bitmap() used for triple buffering.