Одна из наиболее полезных сложных
Одна из наиболее полезных сложных поверхностей, которые Вы можете определять, составлена из первичной поверхности и одного или многих обратных буферов, которые формируют переключающуюся поверхность. Члены в структуре DDSURFACEDESC (ddsd ниже) подготовлены к сложному поверхностному созданию и заполнены, чтобы описать переключающуюся поверхность, которая имеет один обратный буфер.
DDSURFACEDESC ddsd;
ddsd.dwSize = sizeof( ddsd );
//Tell DDRAW which fields are valid
ddsd.dwFlags = DDSD_CAPS | DDSD_BACKBUFFERCOUNT;
//Ask для первичной поверхности с одиночным
//back буфер
ddsd.ddsCaps.dwCaps = DDSCAPS_COMPLEX | DDSCAPS_FLIP |
DDSCAPS_PRIMARYSURFACE;
ddsd.dwBackBufferCount = 1;
Пример создает поверхность с двойным буфером и переключающимися страницами, a одиночное обращение к IDirectDrawSurface::Flip обменивает поверхностную память основной поверхности с обратным буфером. Если BackBufferCount определен значением 2, будут созданы два обратных буфера, и каждое обращение к IDirectDrawSurface:: Flip вращает поверхности по кругу, обеспечивая тройную буфернуюпереключающуюся среду.