Функция wglCopyContext (wingdi.h)
Функция wglCopyContext копирует выбранные группы состояний отрисовки из одного контекста отрисовки OpenGL в другой.
Синтаксис
BOOL wglCopyContext(
HGLRC unnamedParam1,
HGLRC unnamedParam2,
UINT unnamedParam3
);
Параметры
unnamedParam1
Указывает исходный контекст отрисовки OpenGL, сведения о состоянии которого необходимо скопировать.
unnamedParam2
Указывает конечный контекст отрисовки OpenGL, в который копируются сведения о состоянии.
unnamedParam3
Указывает, какие группы состояния отрисовки hglrcSrc необходимо скопировать в hglrcDst. Он содержит побитовую или те же символьные имена, которые передаются функции glPushAttrib . Для копирования всех сведений о состоянии отрисовки можно использовать GL_ALL_ATTRIB_BITS.
Возвращаемое значение
Если функция выполнена успешно, возвращается значение TRUE. Если функция завершается сбоем, возвращается значение FALSE. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
С помощью функции wglCopyContext можно синхронизировать состояние отрисовки двух контекстов отрисовки. Состояние отрисовки можно скопировать только между двумя контекстами отрисовки в рамках одного процесса. Контексты отрисовки должны быть в той же реализации OpenGL. Например, вы всегда можете скопировать состояние отрисовки между двумя контекстами отрисовки с одинаковым форматом пикселей в одном процессе.
Вы можете скопировать те же сведения о состоянии, доступные только с помощью функции glPushAttrib . Вы не можете скопировать некоторые сведения о состоянии, такие как состояние пакета/распаковки пикселей, состояние режима отрисовки, состояние выбора и состояние обратной связи. При вызове wglCopyContext убедитесь, что контекст отрисовки назначения hglrcDst не является текущим ни для одного потока.
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | wingdi.h |
Библиотека | Opengl32.lib |
DLL | Opengl32.dll |