Compartir a través de


Estructura LAYERPLANEDESCRIPTOR (wingdi.h)

La estructura LAYERPLANEDESCRIPTOR describe el formato de píxel de una superficie de dibujo.

Sintaxis

typedef struct tagLAYERPLANEDESCRIPTOR {
  WORD     nSize;
  WORD     nVersion;
  DWORD    dwFlags;
  BYTE     iPixelType;
  BYTE     cColorBits;
  BYTE     cRedBits;
  BYTE     cRedShift;
  BYTE     cGreenBits;
  BYTE     cGreenShift;
  BYTE     cBlueBits;
  BYTE     cBlueShift;
  BYTE     cAlphaBits;
  BYTE     cAlphaShift;
  BYTE     cAccumBits;
  BYTE     cAccumRedBits;
  BYTE     cAccumGreenBits;
  BYTE     cAccumBlueBits;
  BYTE     cAccumAlphaBits;
  BYTE     cDepthBits;
  BYTE     cStencilBits;
  BYTE     cAuxBuffers;
  BYTE     iLayerPlane;
  BYTE     bReserved;
  COLORREF crTransparent;
} LAYERPLANEDESCRIPTOR, *PLAYERPLANEDESCRIPTOR, *LPLAYERPLANEDESCRIPTOR;

Miembros

nSize

Especifica el tamaño de esta estructura de datos. Establezca este valor en sizeof(LAYERPLANEDESCRIPTOR).

nVersion

Especifica la versión de esta estructura de datos. Establezca este valor en 1.

dwFlags

Conjunto de marcas de bits que especifican las propiedades del plano de capa. Las propiedades generalmente no son mutuamente excluyentes; se puede establecer cualquier combinación de marcas de bits, con las excepciones indicadas. Se definen las siguientes constantes de marca de bits.

Valor Significado
LPD_SUPPORT_OPENGL El plano de capa admite el dibujo de OpenGL.
LPD_SUPPORT_GDI El plano de capa admite el dibujo GDI. La implementación actual de OpenGL no admite esta marca.
LPD_DOUBLEBUFFER El plano de capa se almacena en búfer doble. Un plano de capa se puede almacenar en búfer doble incluso cuando el plano principal está almacenado en búfer único y viceversa.
LPD_STEREO El plano de capa es estereoscópico. Un plano de capa puede ser estereoscópico incluso cuando el plano principal es monoscópico y viceversa.
LPD_SWAP_EXCHANGE En un plano de capa con búfer doble, el intercambio del búfer de color intercambia el contenido del búfer frontal y el búfer de reserva. Después, el búfer de reserva contiene el contenido del búfer frontal antes del intercambio. Esta marca es solo una sugerencia y es posible que un controlador no lo proporcione.
LPD_SWAP_COPY En un plano de capa de doble búfer, el intercambio del búfer de colores copia el contenido del búfer de reserva en el búfer frontal. El intercambio no afecta al contenido del búfer de reserva. Esta marca es solo una sugerencia y es posible que un controlador no lo proporcione.
LPD_TRANSPARENT El miembro crTransparent de esta estructura contiene un valor de índice o color transparente que permite que las capas subyacentes se muestren a través de esta capa. Todos los planos de capa, excepto la capa inferior numerada más baja, tienen un color o índice transparentes.
LPD_SHARE_DEPTH El plano de capa comparte el búfer de profundidad con el plano principal.
LPD_SHARE_STENCIL El plano de capa comparte el búfer de galería de símbolos con el plano principal.
LPD_SHARE_ACCUM El plano de capa comparte el búfer de acumulación con el plano principal.

iPixelType

Especifica el tipo de datos de píxeles. Se definen los siguientes tipos.

Valor Significado
LPD_TYPE_RGBA Píxeles RGBA. Cada píxel tiene cuatro componentes: rojo, verde, azul y alfa.
LPD_TYPE_COLORINDEX Píxeles de índice de color. Cada píxel usa un valor de índice de color.

cColorBits

Especifica el número de planos de bits de color en cada búfer de colores. Para los tipos de píxeles RGBA, es el tamaño del búfer de colores, excepto los planos de bits alfa. Para píxeles de índice de color, es el tamaño del búfer de índice de color.

cRedBits

Especifica el número de planos de bits rojos en cada búfer de color RGBA.

cRedShift

Especifica el recuento de desplazamientos de los planos de bits rojos en cada búfer de color RGBA.

cGreenBits

Especifica el número de planos de bits verdes en cada búfer de color RGBA.

cGreenShift

Especifica el recuento de desplazamientos de los planos de bits verdes en cada búfer de color RGBA.

cBlueBits

Especifica el número de planos de bits azules en cada búfer de color RGBA.

cBlueShift

Especifica el recuento de desplazamientos de los planos de bits azules en cada búfer de color RGBA.

cAlphaBits

Especifica el número de planos de bits alfa en cada búfer de color RGBA. No se admiten planos de bits alfa.

cAlphaShift

Especifica el recuento de desplazamientos de los planos de bits alfa en cada búfer de color RGBA. No se admiten planos de bits alfa.

cAccumBits

Especifica el número total de planos de bits en el búfer de acumulación.

cAccumRedBits

Especifica el número de planos de bits rojos en el búfer de acumulación.

cAccumGreenBits

Especifica el número de planos de bits verdes en el búfer de acumulación.

cAccumBlueBits

Especifica el número de planos de bits azules en el búfer de acumulación.

cAccumAlphaBits

Especifica el número de planos de bits alfa en el búfer de acumulación.

cDepthBits

Especifica la profundidad del búfer de profundidad (eje Z).

cStencilBits

Especifica la profundidad del búfer de galería de símbolos.

cAuxBuffers

Especifica el número de búferes auxiliares. No se admiten búferes auxiliares.

iLayerPlane

bReserved

No se usa. Debe ser cero.

crTransparent

Cuando se establece la marca LPD_TRANSPARENT, especifica el color transparente o el valor de índice. Normalmente, el valor es cero.

Comentarios

Tenga en cuenta, como se ha documentado anteriormente, que algunas propiedades del plano de capa no se admiten en la implementación actual. La implementación es la implementación de software GDI de Microsoft de OpenGL. Los fabricantes de hardware que mejoran partes de OpenGL pueden admitir algunas propiedades del plano de capa no admitidas por la implementación genérica.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado wingdi.h

Consulte también

OpenGL en Windows

PIXELFORMATDESCRIPTOR

Estructuras

wglCreateLayerContext

wglDescribeLayerPlane

wglGetLayerPaletteEntries

wglRealizeLayerPalette

wglSetLayerPaletteEntries

wglSwapLayerBuffers