Поделиться через


Функция wglSwapLayerBuffers (wingdi.h)

Функция wglSwapLayerBuffers переключает передний и задний буферы в плоскостях перекрытия, подложки и main окна, на которые ссылается указанный контекст устройства.

Синтаксис

BOOL wglSwapLayerBuffers(
  HDC  unnamedParam1,
  UINT unnamedParam2
);

Параметры

unnamedParam1

Указывает контекст устройства окна, палитра плоскости слоя которого должна быть реализована в физической палитре.

unnamedParam2

Указывает наложение, подложку и main плоскостях, передние и задние буферы которых должны быть заменены. Элемент bReserved структуры PIXELFORMATDESCRIPTOR указывает количество плоскостей перекрытия и подложки. Параметр fuPlanes представляет собой побитовое сочетание следующих значений.

 

Значение Значение
WGL_SWAP_MAIN_PLANE
Меняет местами передний и задний буферы плоскости main.
WGL_SWAP_OVERLAYi
Переключает передний и задний буферы плоскости наложения i, где i — целое число от 1 до 15. WGL_SWAP_OVERLAY1 определяет первую плоскость наложения на main плоскости, WGL_SWAP_OVERLAY2 определяет вторую плоскость наложения над первой плоскостью наложения и т. д.
WGL_SWAP_UNDERLAYi
Переключает передний и задний буферы подложной плоскости i, где i — целое число от 1 до 15. WGL_SWAP_UNDERLAY1 идентифицирует первую плоскость подложки под плоскостью main, WGL_SWAP_UNDERLAY2 идентифицирует вторую плоскость под первой плоскостью и т. д.

Возвращаемое значение

Если функция выполнена успешно, возвращается значение TRUE. Если функция завершается сбоем, возвращается значение FALSE. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Если плоскость слоя не включает задний буфер, вызов функции wglSwapLayerBuffers не оказывает влияния на этот уровень слоя. После вызова wglSwapLayerBuffers состояние содержимого заднего буфера задается в соответствующей структуре LAYERPLANEDESCRIPTOR плоскости слоя или в структуре PIXELFORMATDESCRIPTOR плоскости main. Функция wglSwapLayerBuffers одновременно переключает передний и задний буферы в указанных плоскостях слоя.

Некоторые устройства не поддерживают переключение плоскостей слоев по отдельности; они меняют все плоскости слоев в группу. Если установлен флаг PFD_SWAP_LAYER_BUFFERS структуры PIXELFORMATDESCRIPTOR , он указывает, что устройство может менять отдельные плоскости слоев и что можно вызвать wglSwapLayerBuffers.

В приложениях, использующих несколько потоков, перед вызовом wglSwapLayerBuffers очистите все команды рисования во всех потоках, отрисовывающих в одном окне.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wingdi.h
Библиотека Opengl32.lib
DLL Opengl32.dll

См. также раздел

LAYERPLANEDESCRIPTOR

OpenGL в Windows

PIXELFORMATDESCRIPTOR

Буферы буферов

Функции WGL