request_video_bitmap

Langue: en

Version: version 4.2.2 (fedora - 05/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

request_video_bitmap - Triple buffering page flip request. Allegro game programming library.

SYNOPSIS

#include <allegro.h>

int request_video_bitmap(BITMAP *bitmap);

DESCRIPTION

This function is used for triple buffering. It requests a page flip to display the specified video bitmap object, but returns immediately rather than waiting for a retrace. The flip will then take place during the next vertical retrace, but you can carry on running other code in the meantime and use the poll_scroll() routine to detect when the flip has actually taken place. Triple buffering is only possible on certain hardware: see the comments about request_scroll(). Example:
    int current_page;
    BITMAP *video_page[3];
    ...
    /* Create pages for page flipping */
    video_page[0] = create_video_bitmap(SCREEN_W, SCREEN_H);
    video_page[1] = create_video_bitmap(SCREEN_W, SCREEN_H);
    video_page[2] = create_video_bitmap(SCREEN_W, SCREEN_H);
    current_page = 0;
    ...
    /* draw the screen and flip pages */
    draw_screen(video_page[current_page]);
    do {
    } while (poll_scroll());
    request_video_bitmap(video_page[current_page]);
    current_page = (current_page+1)%3;
    ...
 

RETURN VALUE

Returns zero on success and non-zero on failure.

SEE ALSO

poll_scroll(3), request_scroll(3), gfx_capabilities(3), create_video_bitmap(3), scroll_screen(3), ex3buf(3), exupdate(3)