Estructura FORMATOP (d3dumddi.h)
La estructura FORMATOP describe un formato de superficie y operaciones que se pueden realizar con dicha superficie.
Sintaxis
typedef struct _FORMATOP {
[in] D3DDDIFORMAT Format;
[out] UINT Operations;
[out] UINT FlipMsTypes;
[out] UINT BltMsTypes;
[out] UINT PrivateFormatBitCount;
} FORMATOP;
Miembros
[in] Format
Valor con tipo D3DDDIFORMAT que indica el formato de píxel de la superficie.
[out] Operations
OR bit a bit válido de las marcas siguientes que indican las operaciones que se pueden realizar en superficies con el formato de píxel especificado en el miembro Format . Algunas de las marcas siguientes implican que se deben usar otras marcas. Si un controlador establece una marca que implica otras marcas, el controlador no es necesario para establecer las marcas implícitas y el tiempo de ejecución de Direct3D determina el uso de las marcas implícitas.
FORMATOP_TEXTURE (0x00000001L)
Las superficies del formato de píxel especificado se pueden usar como texturas asignadas por MIP.
FORMATOP_VOLUMETEXTURE (0x00000002L)
Las superficies de este formato se pueden usar como texturas de volumen. Tenga en cuenta que esta marca es independiente de FORMATOP_TEXTURE. Por lo tanto, se puede usar un formato de píxel para texturas de volumen y no para texturas convencionales asignadas a MIP.
FORMATOP_CUBETEXTURE (0x00000004L)
Las superficies de este formato se pueden usar como texturas de mapa de entorno cúbicas. Tenga en cuenta que esta marca es independiente de FORMATOP_TEXTURE. Por lo tanto, se puede usar un formato de píxel para texturas de mapa de entorno cúbicas y no para texturas convencionales asignadas a MIP.
FORMATOP_OFFSCREEN_RENDERTARGET (0x00000008L)
Las superficies de este formato se pueden usar como destinos de representación fuera de pantalla, independientemente del formato de píxel del modo de visualización, si el formato de píxel del modo de visualización actual se notificó con FORMATOP_DISPLAYMODE y FORMATOP_3DACCELERATION. Si el formato de píxel del modo de visualización actual no tenía estas marcas establecidas, no hay ninguna aceleración 3D disponible en este modo incluso si el destino de representación está fuera de pantalla. La marca FORMATOP_OFFSCREEN_RENDERTARGET se puede combinar con FORMATOP_TEXTURE para indicar que el dispositivo puede representarse en texturas del formato de píxel especificado.
La marca FORMATOP_OFFSCREEN_RENDERTARGET también implica las marcas FORMATOP_SAME_FORMAT_RENDERTARGET y FORMATOP_SAME_FORMAT_UP_TO_ALPHA_RENDERTARGET.
FORMATOP_SAME_FORMAT_RENDERTARGET (0x00000010L)
Las superficies de este formato se pueden usar como destinos de representación, pero solo cuando el formato de píxel de la superficie coincide con el formato de píxel del modo de presentación actual. Esta marca no solo se aplica a los destinos de representación fuera de la pantalla, sino que se puede especificar en los formatos de píxeles de los modos de visualización para indicar la funcionalidad de destino de representación. Esta marca se puede combinar con FORMATOP_TEXTURE para indicar que el dispositivo puede representarse en texturas del formato de píxel especificado.
La marca FORMATOP_SAME_FORMAT_RENDERTARGET también implica la marca FORMATOP_SAME_FORMAT_UP_TO_ALPHA_RENDERTARGET.
FORMATOP_ZSTENCIL (0x00000040L)
Las superficies de este formato se pueden usar como búferes de galería de símbolos Z/, pero solo si la profundidad de la superficie de la galería de símbolos Z coincide con la profundidad de color del destino de representación al que se adjunta el búfer de profundidad. Use el intervalo de píxeles cuando decida una coincidencia entre la galería de símbolos Z y la profundidad del búfer de color.
FORMATOP_ZSTENCIL_WITH_ARBITRARY_COLOR_DEPTH (0x00000080L)
Las superficies de este formato se pueden usar como búferes de galería de símbolos Z, independientemente de la profundidad de color del destino de representación al que se adjunta la superficie.
La marca FORMATOP_ZSTENCIL_WITH_ARBITRARY_COLOR_DEPTH también implica la marca FORMATOP_ZSTENCIL.
FORMATOP_SAME_FORMAT_UP_TO_ALPHA_RENDERTARGET (0x00000100L)
Las superficies de este formato se pueden usar como destinos de representación si el modo de visualización actual es la misma profundidad y se omite el canal alfa. Por ejemplo, si el dispositivo puede representarse en A8R8G8B8 cuando se X8R8G8B8 el modo de presentación, la entrada de lista de operaciones de formato para A8R8G8B8 debe tener establecida esta marca.
FORMATOP_DISPLAYMODE (0x00000400L)
Modo de visualización con este formato de píxel compatible con el modelo de controlador (incluido Flip). Esta marca no debe establecerse en formatos alfa.
FORMATOP_3DACCELERATION (0x00000800L)
El acelerador de gráficos puede admitir algún nivel de aceleración de Microsoft Direct3D cuando está en modo de visualización con este formato de píxel, y el controlador puede crear un contexto en este modo (para algún formato de destino de representación). Esta marca solo se puede usar cuando se notifican formatos de modo de presentación (especificando el FORMATOP_DISPLAYMODE). Esta marca no se debe usar para notificar formatos de destinos de representación fuera de pantalla.
FORMATOP_PIXELSIZE (0x00001000L)
El controlador rellena los bits por píxel para el formato en el miembro PrivateFormatBitCount .
Si el controlador requiere que las superficies administradas y las texturas usen un formato privado (un formato que el controlador puede procesar pero no de forma nativa en el entorno de ejecución de Direct3D), el controlador debe especificar FORMATOP_PIXELSIZE y el tamaño de píxel en PrivateFormatBitCount.
FORMATOP_CONVERT_TO_ARGB (0x00002000L)
Las superficies de origen de este formato se pueden convertir en cualquier superficie de destino con un formato de píxel RGB que tenga la marca FORMATOP_MEMBEROFGROUP_ARGB especificada.
FORMATOP_OFFSCREENPLAIN (0x00004000L)
El controlador puede extenderse hacia y hacia y desde las superficies de relleno de color de este formato.
FORMATOP_SRGBREAD (0x00008000L)
Las superficies de este formato se pueden leer como texturas con formato sRGB (es decir, el muestreador linealiza los datos buscados).
FORMATOP_BUMPMAP (0x00010000L)
Las superficies de este formato se pueden usar como texturas de mapa de entorno de bump. Tenga en cuenta que esta marca es independiente de FORMATOP_TEXTURE. Por lo tanto, se puede usar un formato de píxeles para las texturas de mapa de entorno de bump y no para las texturas convencionales asignadas a MIP.
FORMATOP_DMAP (0x00020000L)
El muestreador de mapa de desplazamiento puede muestrear superficies de este formato.
FORMATOP_NOFILTER (0x00040000L)
Las superficies de este formato no se pueden usar con el filtrado de texturas.
FORMATOP_MEMBEROFGROUP_ARGB (0x00080000L)
Las superficies de destino de este formato se pueden convertir desde cualquier superficie de origen con un formato de píxel que tenga la marca FORMATOP_CONVERT_TO_ARGB especificada. El controlador solo puede especificar FORMATOP_MEMBEROFGROUP_ARGB para superficies ARGB con al menos 5 bits de información de color para cada canal. Es decir, el formato D3DDDIFMT_A1R5G5B5 es válido, pero el formato D3DDDIFMT_A4R4G4B4 no es válido. Si el controlador especifica FORMATOP_MEMBEROFGROUP_ARGB con un formato no válido, el tiempo de ejecución de Direct3D impide que direct3D HAL se cargue. Tenga en cuenta que aunque esta marca indica formatos ARGB, el tiempo de ejecución también permite al controlador especificar superficies con formatos XRGB (por ejemplo, D3DDDIFMT_X1R5G5B5).
FORMATOP_SRGBWRITE (0x00100000L)
Las superficies de este formato se pueden escribir como destinos con formato sRGB (es decir, la canalización de píxeles delimita los datos de salida en este formato).
FORMATOP_NOALPHABLEND (0x00200000L)
Las superficies de este formato no se pueden usar con mezcla alfa.
FORMATOP_AUTOGENMIPMAP (0x00400000L)
Los subveles de texturas asignadas por MIP con este formato se pueden generar automáticamente. Para que el controlador reciba llamadas a su función GenerateMipSubLevels , esta marca debe exponerse.
FORMATOP_VERTEXTEXTURE (0x00800000L)
Un muestreador de textura de vértices puede usar superficies de este formato. Es decir, solo las superficies de este formato se pueden usar como texturas de vértice.
FORMATOP_NOTEXCOORDWRAPNORMIP (0x01000000L)
Las superficies de este formato solo se pueden usar condicionalmente para la asignación de texturas de texturas 2D con dimensiones que no son potencias de 2. Para obtener más información, vea las definiciones de D3DPTEXTURECAPS_POW2 y D3DPTEXTURECAPS_NONPOW2CONDITIONAL en la página de referencia de D3DPRIMCAPS .
FORMATOP_PLANAR (0x020000000L)
Las superficies de este formato son planar frente a empaquetadas. El tiempo de ejecución de Direct3D debe asignar un búfer si llama a la función Lock del controlador de pantalla en modo de usuario en una superficie con un formato planar mientras se pierde la superficie y no es posible el cálculo típico de la altura del tono multiplicado por horas. La mayoría de los formatos están empaquetados excepto los que usa la aceleración de vídeo de Microsoft DirectX (por ejemplo, formatos YUV).
FORMATOP_OVERLAY (0x040000000L)
Las superficies de este formato se usan para las operaciones de superposición.
FORMATOP_CAPTURE (0x080000000L)
Si se establece el miembro VideoEncoder de la estructura de D3DDDI_RESOURCEFLAGS2 , las superficies de este formato se pueden usar como búferes de captura.
Se admite a partir de Windows 8.
FORMATOP_VIDEO_ENCODER (0x100000000L)
Si se establece el miembro VideoEncoder de la estructura D3DDDI_RESOURCEFLAGS2 , las superficies de este formato se pueden usar como recursos de entrada del codificador de vídeo.
Se admite a partir de Windows 8.
FORMATOP_MULTIPLANE_OVERLAY (0x200000000L)
Las superficies de este formato admiten una superposición multiplano.
Se admite a partir de Windows 8.
[out] FlipMsTypes
Máscara de 32 bits para muestreo múltiple de pantalla completa.
[out] BltMsTypes
Máscara de 32 bits para el muestreo múltiple de ventanas.
[out] PrivateFormatBitCount
Bits por píxel de un formato de píxel que es privado para el controlador (es decir, no uno de los formatos de píxel estándar definidos por el tipo de enumeración D3DDDIFORMAT ).
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows. |
Encabezado | d3dumddi.h (incluya D3dumddi.h) |