Función wglCreateLayerContext (wingdi.h)
La función wglCreateLayerContext crea un nuevo contexto de representación de OpenGL para dibujar en un plano de capa especificado en un contexto de dispositivo.
Sintaxis
HGLRC wglCreateLayerContext(
HDC unnamedParam1,
int unnamedParam2
);
Parámetros
unnamedParam1
Especifica el contexto del dispositivo para un nuevo contexto de representación.
unnamedParam2
Especifica el plano de capa al que desea enlazar un contexto de representación. El valor 0 identifica el plano principal. Los valores positivos de iLayerPlane identifican los planos de superposición, donde 1 es el primer plano de superposición sobre el plano principal, 2 es el segundo plano de superposición sobre el primer plano de superposición, etc. Los valores negativos identifican planos subyacentes, donde 1 es el primer plano subyacente bajo el plano principal, 2 es el segundo plano subyacente bajo el primer plano subyacente, etc. El número de planos superpuestos y subyacentes se proporciona en el miembro bReserved de la estructura PIXELFORMATDESCRIPTOR .
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es un identificador de un contexto de representación de OpenGL.
Si la función no se realiza correctamente, el valor devuelto es NULL. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Un contexto de representación es un puerto a través del cual se pasan todos los comandos de OpenGL. Cada subproceso que realiza llamadas a OpenGL debe tener un contexto de representación activo actual. Un contexto de representación no es el mismo que un contexto de dispositivo; un contexto de representación contiene información específica de OpenGL, mientras que un contexto de dispositivo contiene información específica de GDI.
Antes de crear un contexto de representación, establezca el formato de píxel del contexto del dispositivo con la función SetPixelFormat . Puede usar un contexto de representación en un plano de capa especificado de una ventana solo con formatos de píxeles idénticos.
Con las aplicaciones de OpenGL que usan varios subprocesos, se crea un contexto de representación, se selecciona como el contexto de representación actual de un subproceso y se realizan llamadas OpenGL para el subproceso especificado. Cuando haya terminado con el contexto de representación del subproceso, llame a la función wglDeleteContext .
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar wglCreateLayerContext.
// The following code fragment shows how to render to overlay 1
// This example assumes that the pixel format of hdc includes
// overlay plane 1
HDC hdc;
HGLRC;
// create a rendering context for overlay plane 1
hglrc = wglCreateLayerContext(hdc, 1);
// make it the calling thread's current rendering context
wglMakeCurrent(hdc, hglrc);
// call OpenGL functions here. . .
// when the rendering context is no longer needed. . .
// make the rendering context not current
wglMakeCurrent(NULL, NULL);
// delete the rendering context
wglDeleteContext(hglrc);
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wingdi.h |
Library | Opengl32.lib |
Archivo DLL | Opengl32.dll |