Estructura DDSCAPS2 (ddraw.h)

La estructura DDSCAPS2 define funcionalidades adicionales de un objeto de superficie de Microsoft DirectDraw.

Sintaxis

typedef struct _DDSCAPS2 {
  DWORD dwCaps;
  DWORD dwCaps2;
  DWORD dwCaps3;
  union {
    DWORD dwCaps4;
    DWORD dwVolumeDepth;
  } DUMMYUNIONNAMEN;
} DDSCAPS2;

Miembros

dwCaps

Especifica un conjunto de marcas que representan las funciones de la superficie. Las marcas de este miembro son idénticas a las del miembro correspondiente de la estructura DDSCAPS .

dwCaps2

Especifica un conjunto de marcas que indican funcionalidades de superficie adicionales. Este miembro puede contener una o varias de las marcas de funcionalidad siguientes. La aplicación establece cada una de estas marcas, excepto DDSCAPS2_TEXTUREMANAGE, cuando la aplicación llama a su método CreateSurface .

Marca Significado

DDSCAPS2_ADDITIONALPRIMARY

Microsoft DirectX 9.0 y versiones posteriores solo.

Indica que los encabezados subordinados de una tarjeta de varias cabezas ya no controlan su memoria de vídeo después de que se creen superficies para esos cabezales subordinados con este conjunto de bits. Una vez destruidas dichas superficies, los cabezales subordinados recuperan el control de su memoria. Para obtener más información, consulte Administración de memoria Multiple-Head.

DDSCAPS2_COMMANDBUFFER

Marca un búfer de comandos, usado por Microsoft Direct3D para los comandos por lotes.

DDSCAPS2_CUBEMAP

Esta superficie es un mapa de entorno cúbico. Al usar esta marca, especifique también la cara o las caras del mapa de entorno cúbico que se va a crear.

DDSCAPS2_CUBEMAP_POSITIVEX

Esta marca se usa con la marca DDSCAPS2_CUBEMAP para crear la cara X positiva de un mapa de entorno cúbico.

DDSCAPS2_CUBEMAP_NEGATIVEX

Esta marca se usa con la marca DDSCAPS2_CUBEMAP para crear la cara X negativa de un mapa de entorno cúbico.

DDSCAPS2_CUBEMAP_POSITIVEY

Esta marca se usa con la marca DDSCAPS2_CUBEMAP para crear la cara Y positiva de un mapa de entorno cúbico.

DDSCAPS2_CUBEMAP_NEGATIVEY

Esta marca se usa con la marca DDSCAPS2_CUBEMAP para crear la cara Y negativa de un mapa de entorno cúbico.

DDSCAPS2_CUBEMAP_POSITIVEZ

Esta marca se usa con la marca DDSCAPS2_CUBEMAP para crear la cara Z positiva de un mapa de entorno cúbico.

DDSCAPS2_CUBEMAP_NEGATIVEZ

Esta marca se usa con la marca DDSCAPS2_CUBEMAP para crear la cara Z negativa de un mapa de entorno cúbico.

DDSCAPS2_CUBEMAP_ALLFACES

Esta marca se usa con la marca DDSCAPS2_CUBEMAP para crear las seis caras de un mapa de entorno cúbico.

DDSCAPS2_D3DTEXTUREMANAGE

La textura siempre se administra mediante Direct3D.

DDSCAPS2_DISCARDBACKBUFFER

DirectX 8.0 y versiones posteriores solo.

Indica que no se requiere la conservación del búfer de reserva. Se establecerá en la superficie principal y los búferes de reserva si la aplicación ha establecido D3DSWAPEFFECT_DISCARD en la API actual. DirectX 9.0 y versiones posteriores solo. Indica que no se requiere conservación de la superficie de galería de símbolos de profundidad.

DDSCAPS2_DONOTPERSIST

La superficie administrada se puede perder de forma segura.

DDSCAPS2_ENABLEALPHACHANNEL

DirectX 8.1 y versiones posteriores solo.

Indica que se crean superficies que forman parte de una cadena de volteo principal o que están en búferes back independientes. Esta marca activa el canal alfa. Para obtener más información, consulte Habilitación de canales alfa en Full-Screen Búferes de reserva.

DDSCAPS2_EXTENDEDFORMATPRIMARY

DirectX 9.0 y versiones posteriores solo.

Indica que se va a crear una superficie principal ficticía para su uso con un modo de presentación no estándar. Para obtener más información, vea Cambiar entre modos estándar y no estándar.

DDSCAPS2_HARDWAREDEINTERLACE

El controlador debe convertir la señal entrelazada en fotogramas progresivos. También se deben establecer las marcas DDSCAPS_VIDEOPORT y DDSCAPS_OVERLAY de esta estructura.

DDSCAPS2_HINTANTIALIASING

La aplicación usará suavizado de contorno. Esta marca solo es válida si también se establece la marca DDSCAPS_3DDEVICE.

DDSCAPS2_HINTDYNAMIC

La aplicación actualizará la superficie con frecuencia. Las superficies con este conjunto de marcas también deben tener la marca DDSCAPS_TEXTURE en este conjunto de estructura. Esta marca no se puede usar con las marcas DDSCAPS2_HINTSTATIC o DDSCAPS2_OPAQUE.

DDSCAPS2_HINTSTATIC

La aplicación actualizará la superficie con poca frecuencia, pero todavía requiere acceso. Las superficies con este conjunto de marcas también deben tener la marca DDSCAPS_TEXTURE en este conjunto de estructura. Esta marca no se puede usar con las marcas DDSCAPS2_HINTDYNAMIC o DDSCAPS2_OPAQUE.

DDSCAPS2_INDEXBUFFER

DirectX 8.0 y versiones posteriores solo.

Marca un búfer de índices, creado y controlado por la aplicación.

DDSCAPS2_MIPMAPSUBLEVEL

Permite un uso más sencillo de GetAttachedSurface, en lugar de EnumAttachedSurfaces, para construcciones de superficie como mapas de cubos, en las que hay más de una superficie de mapa mip conectada a la superficie raíz. Debe establecerse en todas las superficies de nivel no superior de un mapa de cubo mipmapped para que una llamada a GetAttachedSurface pueda distinguir entre las caras de nivel superior y los niveles de mapa mip adjuntos. CreateSurface omite este bit de funcionalidad.

DDSCAPS2_NOTUSERLOCKABLE

DirectX 8.0 y versiones posteriores solo.

Se establece en el principal y los búferes de reserva si la cadena de volteo no se puede bloquear o en cualquier destino de representación que no se pueda bloquear. Esto permite a los controladores realizar la optimización en segundo plano. Tenga en cuenta que todavía es posible bloquear las superficies, por lo que el controlador debe controlar estos casos, pero estos bloqueos son poco frecuentes y no se espera que sean rápidos. El controlador también puede determinar si el búfer de profundidad o galería de símbolos es bloqueable por la presencia de esta marca.

DDSCAPS2_NPATCHES

DirectX 8.0 y versiones posteriores solo.

Indica que los datos del búfer de vértices se pueden usar para representar n revisiones.

DDSCAPS2_OPAQUE

La aplicación nunca bloqueará, transferirá ni actualizará la superficie durante el resto de la duración de esa superficie. El controlador puede comprimir o reordenar la superficie sin tener que descomprimirla. Las superficies con este conjunto de marcas también deben tener la marca DDSCAPS_TEXTURE en este conjunto de estructura. Esta marca no se puede usar con las marcas DDSCAPS2_HINTDYNAMIC o DDSCAPS2_HINTSTATIC.

DDSCAPS2_POINTS

DirectX 8.0 y versiones posteriores solo.

Indica que los datos del búfer de vértices se pueden usar para representar puntos y sprites de punto.

DDSCAPS2_RTPATCHES

DirectX 8.0 y versiones posteriores solo.

Indica que los datos del búfer de vértices se pueden usar para representar revisiones rt.

DDSCAPS2_STEREOSURFACELEFT

Esta superficie forma parte de una cadena de volteo estéreo. Cuando se establece esta marca durante una llamada a CreateSurface , se crea un par de superficies estéreo para cada búfer de la cadena de volteo principal. Debe crear una cadena de volteo compleja (con búferes de reserva). No se puede crear un único conjunto de superficies estéreo. El método Flip requiere búferes de reserva, por lo que se deben crear al menos 4 superficies.

Además, cuando esta marca se establece en una estructura DDSURFACEDESC como resultado de una llamada a EnumDisplayModes o GetDisplayMode , indica compatibilidad con estéreo en ese modo.

DDSCAPS2_TEXTUREMANAGE

El cliente indica que el controlador debe administrar esta superficie de textura si es posible; de lo contrario, se administra mediante el modo inmediato de Direct3D. Esta marca solo se puede usar para superficies de textura (DDSCAPS_TEXTURE marca establecida en el miembro dwCaps ). Para obtener más información, vea Administración automática de texturas en la documentación del modo inmediato de Direct3D.

DDSCAPS2_VERTEXBUFFER

Marca un búfer de vértices explícito, creado y controlado por la aplicación.

DDSCAPS2_VOLUME

DirectX 8.0 y versiones posteriores solo.

Esta marca se establece si la textura tiene profundidad además de ancho y alto.

dwCaps3

Solo versiones de DirectX 8.0 y DirectX 8.1.

Especifica el número de muestras para una superficie de muestreo múltiple. Este campo contiene uno de los valores del tipo enumerado D3DMULTISAMPLE_TYPE. Si una superficie no tiene muestreo múltiple, dwCaps3 tiene el valor D3DMULTISAMPLE_NONE (0).

DirectX 9.0 y versiones posteriores solo.

Especifica un conjunto de bits que indican funcionalidades de superficie adicionales. Este miembro puede ser un OR bit a bit de los siguientes bits.

Bits Significado

Bits de la máscara de DDSCAPS3_MULTISAMPLE_MASK (0x0000001FL).

Los cinco primeros bits de dwCaps3 indican el número de muestras de una superficie de muestreo múltiple. El número de muestras se puede especificar mediante uno de los valores del tipo enumerado D3DMULTISAMPLE_TYPE. Si una superficie no tiene muestreo múltiple, este valor es D3DMULTISAMPLE_NONE (0).

Bits de la máscara de DDSCAPS3_MULTISAMPLE_QUALITY_MASK (0x000000E0L).

Los tres bits siguientes de dwCaps3 indican el nivel de calidad de las muestras de representación en una superficie de muestreo múltiple. El nivel de calidad debe ser un número comprendido entre 0 y 7 que representa un nivel de calidad de 1 a 8 respectivamente. Tenga en cuenta que, aunque una superficie no sea multimuestreo (especificada en los cinco primeros bits mediante D3DMULTISAMPLE_NONE), todavía puede tener un nivel de calidad mayor que 1 (especificado con un número mayor que 0).

DDSCAPS3_RESERVED1 (0x00000100L)

Reservado

DDSCAPS3_VIDEO (0x00000200L)

Indica que el destino de representación contiene datos de vídeo. Tenga en cuenta que se pueden crear varios destinos de representación con esta marca y si dos o más de estos destinos de representación pertenecen al mismo contexto de Direct3D, el controlador determina que estos destinos de representación muestran la misma secuencia de vídeo independientemente de si las superficies de destino de representación se adjuntan entre sí.

DDSCAPS3_LIGHTWEIGHTMIPMAP (0x00000400L)

Indica si esta superficie tiene niveles mip ligeros.

DDSCAPS3_AUTOGENMIPMAP (0x00000800L)

Indica que los subveles mip para esta superficie se generan automáticamente.

DDSCAPS3_DMAP (0x00001000L)

Indica una textura de mapa de desplazamiento que el muestreador de mapa de desplazamiento puede muestrear en la unidad de teselación.

DUMMYUNIONNAMEN

N/D

DUMMYUNIONNAMEN.dwCaps4

La palabra baja es la profundidad de una textura de volumen.

DUMMYUNIONNAMEN.dwVolumeDepth

Especifica la profundidad de bits de textura del volumen.

Comentarios

El controlador usa esta estructura para notificar los tipos de superficies que admite el controlador. También se rellena mediante una aplicación para especificar el tipo de superficie que se va a crear.

Requisitos

   
Encabezado ddraw.h