Estructura D3DCAPS9 (d3d9caps.h)
Representa las funciones del hardware expuesto a través del objeto Direct3D.
Sintaxis
typedef struct _D3DCAPS9 {
D3DDEVTYPE DeviceType;
UINT AdapterOrdinal;
DWORD Caps;
DWORD Caps2;
DWORD Caps3;
DWORD PresentationIntervals;
DWORD CursorCaps;
DWORD DevCaps;
DWORD PrimitiveMiscCaps;
DWORD RasterCaps;
DWORD ZCmpCaps;
DWORD SrcBlendCaps;
DWORD DestBlendCaps;
DWORD AlphaCmpCaps;
DWORD ShadeCaps;
DWORD TextureCaps;
DWORD TextureFilterCaps;
DWORD CubeTextureFilterCaps;
DWORD VolumeTextureFilterCaps;
DWORD TextureAddressCaps;
DWORD VolumeTextureAddressCaps;
DWORD LineCaps;
DWORD MaxTextureWidth;
DWORD MaxTextureHeight;
DWORD MaxVolumeExtent;
DWORD MaxTextureRepeat;
DWORD MaxTextureAspectRatio;
DWORD MaxAnisotropy;
float MaxVertexW;
float GuardBandLeft;
float GuardBandTop;
float GuardBandRight;
float GuardBandBottom;
float ExtentsAdjust;
DWORD StencilCaps;
DWORD FVFCaps;
DWORD TextureOpCaps;
DWORD MaxTextureBlendStages;
DWORD MaxSimultaneousTextures;
DWORD VertexProcessingCaps;
DWORD MaxActiveLights;
DWORD MaxUserClipPlanes;
DWORD MaxVertexBlendMatrices;
DWORD MaxVertexBlendMatrixIndex;
float MaxPointSize;
DWORD MaxPrimitiveCount;
DWORD MaxVertexIndex;
DWORD MaxStreams;
DWORD MaxStreamStride;
DWORD VertexShaderVersion;
DWORD MaxVertexShaderConst;
DWORD PixelShaderVersion;
float PixelShader1xMaxValue;
DWORD DevCaps2;
float MaxNpatchTessellationLevel;
DWORD Reserved5;
UINT MasterAdapterOrdinal;
UINT AdapterOrdinalInGroup;
UINT NumberOfAdaptersInGroup;
DWORD DeclTypes;
DWORD NumSimultaneousRTs;
DWORD StretchRectFilterCaps;
D3DVSHADERCAPS2_0 VS20Caps;
D3DPSHADERCAPS2_0 PS20Caps;
DWORD VertexTextureFilterCaps;
DWORD MaxVShaderInstructionsExecuted;
DWORD MaxPShaderInstructionsExecuted;
DWORD MaxVertexShader30InstructionSlots;
DWORD MaxPixelShader30InstructionSlots;
} D3DCAPS9;
Miembros
DeviceType
Tipo: D3DDEVTYPE
Miembro del tipo enumerado D3DDEVTYPE , que identifica qué tipo de recursos se usan para procesar vértices.
AdapterOrdinal
Tipo: UINT
Adaptador en el que se creó este dispositivo Direct3D. Este ordinal solo es válido para pasar a métodos de la interfaz IDirect3D9 que creó este dispositivo Direct3D. La interfaz IDirect3D9 siempre se puede recuperar llamando a GetDirect3D.
Caps
Tipo: DWORD
La siguiente funcionalidad específica del controlador.
Valor | Significado | |
---|---|---|
|
El hardware de pantalla es capaz de devolver la línea de examen actual. | |
|
El controlador de pantalla admite una DDI superpuesta que permite la comprobación de las funcionalidades de superposición. Para obtener más información sobre la superposición DDI, vea Superposición de DDI.
|
Caps2
Tipo: DWORD
Funcionalidades específicas del controlador identificadas en D3DCAPS2.
Caps3
Tipo: DWORD
Funcionalidades específicas del controlador identificadas en D3DCAPS3.
PresentationIntervals
Tipo: DWORD
Máscara de bits de valores que representan los intervalos de intercambio de presentación disponibles.
CursorCaps
Tipo: DWORD
Máscara de bits que indica qué compatibilidad de hardware está disponible para los cursores. Direct3D 9 no define las funcionalidades de cursor de combinación alfa.
DevCaps
Tipo: DWORD
Marcas que identifican las funcionalidades del dispositivo.
Valor | Significado |
---|---|
|
El dispositivo admite blits de texturas de memoria del sistema a texturas de memoria de vídeo no locales. |
|
El dispositivo puede poner en cola los comandos de representación después de un volteo de página. Las aplicaciones no cambian su comportamiento si se establece esta marca; esta funcionalidad significa que el dispositivo es relativamente rápido. |
|
El dispositivo puede admitir al menos un controlador compatible con DirectX 5. |
|
El dispositivo puede admitir al menos un controlador compatible con DirectX 7. |
|
El dispositivo exporta un hal compatible con IDirect3DDevice9::D rawPrimitive. |
|
El dispositivo puede usar búferes de ejecución de la memoria del sistema. |
|
El dispositivo puede usar búferes de ejecución de la memoria de vídeo. |
|
El dispositivo tiene aceleración de hardware para la rasterización de escenas. |
|
El dispositivo puede admitir la transformación y la iluminación en hardware. |
|
El dispositivo admite N revisiones. |
|
El dispositivo puede admitir la rasterización, la transformación, la iluminación y el sombreado en hardware. |
|
El dispositivo admite curvas Bézier quintices y B-splines. |
|
El dispositivo admite revisiones rectangulares y triangulares. |
|
Cuando se establece esta funcionalidad del dispositivo, la arquitectura de hardware no requiere el almacenamiento en caché de ninguna información y las revisiones sin almacenar en caché (identificador cero) se dibujarán de forma tan eficaz como las almacenadas en caché. Tenga en cuenta que establecer D3DDEVCAPS_RTPATCHHANDLEZERO no significa que se pueda dibujar una revisión con identificador cero. Una revisión handle-zero siempre se puede dibujar si este límite está establecido o no. |
|
El dispositivo está texturando de grupos de memoria independientes. |
|
El dispositivo puede recuperar texturas de la memoria de vídeo no local. |
|
El dispositivo puede recuperar texturas de la memoria del sistema. |
|
El dispositivo puede recuperar texturas de la memoria del dispositivo. |
|
El dispositivo puede usar búferes de la memoria del sistema para vértices transformados y iluminados. |
|
El dispositivo puede usar búferes de la memoria de vídeo para vértices transformados y iluminados. |
PrimitiveMiscCaps
Tipo: DWORD
Funcionalidades primitivas de controladores varios. Consulte D3DPMISCCAPS.
RasterCaps
Tipo: DWORD
Información sobre las funcionalidades de dibujo ráster. Este miembro puede ser una o varias de las marcas siguientes.
Valor | Significado |
---|---|
|
El dispositivo admite el filtrado anisotrópico. |
|
El dispositivo recorre en iteración la perspectiva de los colores correctamente. |
|
El dispositivo puede dither para mejorar la resolución de colores. |
|
El dispositivo admite el sesgo de profundidad heredado. Para obtener un sesgo de profundidad verdadero, consulte D3DPRASTERCAPS_SLOPESCALEDEPTHBIAS. |
|
El dispositivo admite niebla basada en rangos. En niebla basada en intervalos, la distancia de un objeto del visor se usa para calcular efectos de niebla, no la profundidad del objeto (es decir, la coordenada z) en la escena. |
|
El dispositivo calcula el valor de niebla haciendo referencia a una tabla de búsqueda que contiene valores de niebla que se indexan a la profundidad de un píxel determinado. |
|
El dispositivo calcula el valor de niebla durante la operación de iluminación e interpola el valor de niebla durante la rasterización. |
|
El dispositivo admite ajustes de sesgo de nivel de detalle. Estos ajustes de sesgo permiten a una aplicación hacer que un mapa mip aparezca más claro o menos agudo que lo haría normalmente. Para obtener más información sobre el sesgo de nivel de detalle en mapas mip, vea D3DSAMP_MIPMAPLODBIAS. |
|
El dispositivo admite activar y desactivar el muestreo múltiple entre IDirect3DDevice9::BeginScene e IDirect3DDevice9::EndScene (mediante D3DRS_MULTISAMPLEANTIALIAS). |
|
El dispositivo admite la prueba de tijera. Consulte Scissor Test (Direct3D 9) (Prueba de tijera [Direct3D 9]). |
|
El dispositivo realiza un sesgo de profundidad basado en pendientes verdadero. Esto contrasta con el sesgo de profundidad de estilo heredado. |
|
El dispositivo admite el almacenamiento en búfer de profundidad mediante w. |
|
El dispositivo admite niebla basada en w. La niebla basada en W se usa cuando se especifica una matriz de proyección de perspectiva, pero las proyecciones affine siguen usando niebla basada en Z. El sistema considera una matriz de proyección que contiene un valor distinto de cero en el elemento [3][4] para ser una matriz de proyección de perspectiva. |
|
El dispositivo puede realizar la eliminación de superficie oculta (HSR) sin necesidad de que la aplicación ordene los polígonos y sin necesidad de asignar un búfer de profundidad. Esto deja más memoria de vídeo para texturas. El método usado para realizar HSR depende del hardware y es transparente para la aplicación.
HSR sin búfer Z se realiza si no hay ninguna superficie de búfer de profundidad asociada a la superficie de destino de representación y la prueba de comparación de búfer de profundidad está habilitada (es decir, cuando el valor de estado asociado a la constante de enumeración D3DRS_ZENABLE se establece en TRUE). |
|
El dispositivo admite niebla basada en z. |
|
El dispositivo puede realizar operaciones de prueba z. Esto representa eficazmente un primitivo e indica si se han representado píxeles z. |
ZCmpCaps
Tipo: DWORD
Funcionalidades de comparación de búfer Z. Este miembro puede ser una o varias de las marcas siguientes.
SrcBlendCaps
Tipo: DWORD
Funcionalidades de combinación de código fuente. Este miembro puede ser una o varias de las marcas siguientes. (Los valores RGBA del origen y el destino se indican mediante los subíndices s y d).
Valor | Significado | |
---|---|---|
|
El controlador admite D3DBLEND_BLENDFACTOR y D3DBLEND_INVBLENDFACTOR. Consulte D3DBLEND. | |
|
El factor de mezcla de origen es (1 - As, 1 - As, 1 - As) y el factor de mezcla de destino es (As, As, As, As, As); la selección de mezcla de destino se invalida. | |
|
El controlador admite el modo de mezcla D3DBLEND_BOTHSRCALPHA. (Este modo de mezcla está obsoleto. Para obtener más información, vea D3DBLEND). | |
|
El factor de mezcla es (Ad, Ad, Ad, Ad). | |
|
El factor de mezcla es (Rd, Gd, Bd, Ad). | |
|
El factor de mezcla es (1 - Ad, 1 - Ad, 1 - Ad, 1 - Ad). | |
|
El factor de mezcla es (1 - Rd, 1 - Gd, 1 - Bd, 1 - Ad). | |
|
El factor de mezcla es (1 - As, 1 - As, 1 - As, 1 - As). | |
|
El factor de mezcla es (1 - Rs, 1 - Gs, 1 - Bs, 1 - As). | |
|
El factor de mezcla es (1 - PSOutColor[1]r, 1 - PSOutColor[1]g, 1 - PSOutColor[1]b, no usado)). Consulte Render Target Blending (Combinación de destinos de representación).
|
|
|
El factor de mezcla es (1, 1, 1, 1). | |
|
El factor de mezcla es (As, As, As, As). | |
|
El factor de mezcla es (f, f, f, 1); f = min(As, 1 - Ad). | |
|
El factor de mezcla es (Rs, Gs, Bs, As). | |
|
El factor de mezcla es (PSOutColor[1]r, PSOutColor[1]g, PSOutColor[1]b, no se usa). Consulte Render Target Blending (Combinación de destinos de representación).
|
|
|
El factor de mezcla es (0, 0, 0, 0). |
DestBlendCaps
Tipo: DWORD
Funcionalidades de combinación de destino. Este miembro puede ser las mismas funcionalidades definidas para el miembro SrcBlendCaps.
AlphaCmpCaps
Tipo: DWORD
Funcionalidades de comparación de pruebas alfa. Este miembro puede incluir las mismas marcas de funcionalidad definidas para el miembro ZCmpCaps. Si este miembro solo contiene la funcionalidad D3DPCMPCAPS_ALWAYS o solo la funcionalidad D3DPCMPCAPS_NEVER, el controlador no admite pruebas alfa. De lo contrario, las marcas identifican las comparaciones individuales que se admiten para las pruebas alfa.
ShadeCaps
Tipo: DWORD
Funcionalidades de operaciones de sombreado. Se supone, en general, que si un dispositivo admite un comando determinado en absoluto, admite el modo D3DSHADE_FLAT (como se especifica en el tipo enumerado D3DSHADEMODE ). Esta marca especifica si el controlador también puede admitir sombreado gouraud y si se admiten componentes de color alfa. Cuando no se admiten componentes alfa, el valor alfa de los colores generados es implícitamente 255. Este es el máximo posible alfa (es decir, el componente alfa está a plena intensidad).
El color, los resaltados especulares, la niebla y los interpolantes alfa de un triángulo tienen marcas de capacidad que una aplicación puede usar para averiguar cómo se implementan mediante el controlador de dispositivo.
Este miembro puede ser una o varias de las marcas siguientes.
TextureCaps
Tipo: DWORD
Funcionalidades de asignación de texturas varias. Este miembro puede ser una o varias de las marcas siguientes.
Valor | Significado |
---|---|
|
Se admite alfa en píxeles de textura. |
|
El dispositivo puede dibujar alfa de las paletas de texturas. |
|
Admite texturas de cubo. |
|
El dispositivo requiere que los mapas de texturas de cubo tengan dimensiones especificadas como potencias de dos. |
|
El dispositivo admite texturas de cubo mipmapped. |
|
El dispositivo admite texturas mipmapped. |
|
El dispositivo admite texturas de volumen mipmapped. |
|
D3DPTEXTURECAPS_POW2 también se establece, admite condicionalmente el uso de texturas 2D con dimensiones que no son potencias de dos. Un dispositivo que expone esta funcionalidad puede usar esta textura si se cumplen todos los requisitos siguientes.
Si no se establece esta marca y tampoco se establece D3DPTEXTURECAPS_POW2, se proporciona compatibilidad incondicional para texturas 2D con dimensiones que no son potencias de dos. Una textura que no es una potencia de dos no se puede establecer en una fase que se leerá en función de un cálculo del sombreador (como el bem - ps y texm3x3 - instrucciones ps en las versiones de sombreadores de píxeles 1_0 a 1_3). Por ejemplo, estas texturas se pueden usar para almacenar los golpes que se introducirán en lecturas de textura, pero no los mapas de entorno que se usan en texbem - ps, texbeml - ps y texm3x3spec - ps. Esto significa que una textura con dimensiones que no son potencias de dos no se puede abordar ni muestrear mediante coordenadas de textura calculadas dentro del sombreador. Este tipo de operación se conoce como lectura dependiente y no se puede realizar en estos tipos de texturas. |
|
El dispositivo no admite una operación de búsqueda de bump-environment proyectada en sombreadores de funciones programables y fijos. |
|
Se admite la texturización de corrección de perspectiva. |
|
Si no se establece D3DPTEXTURECAPS_NONPOW2CONDITIONAL, todas las texturas deben tener anchos y alto especificados como potencias de dos. Este requisito no se aplica a las texturas de cubo ni a las texturas de volumen.
Si también se establece D3DPTEXTURECAPS_NONPOW2CONDITIONAL, admite condicionalmente el uso de texturas 2D con dimensiones que no son potencias de dos. Consulte D3DPTEXTURECAPS_NONPOW2CONDITIONAL descripción. Si no se establece esta marca y tampoco se establece D3DPTEXTURECAPS_NONPOW2CONDITIONAL, se proporciona compatibilidad incondicional para texturas 2D con dimensiones que no son potencias de dos. |
|
Admite la marca de transformación de textura D3DTTFF_PROJECTED. Cuando se aplica, el dispositivo divide las coordenadas de textura transformadas por la última coordenada de textura. Si esta funcionalidad está presente, la división projectiva se produce por píxel. Si esta funcionalidad no está presente, pero la división projectiva debe producirse de todos modos, el tiempo de ejecución de Direct3D lo realiza por vértice. |
|
Todas las texturas deben ser cuadradas. |
|
Los índices de textura no se escalan por el tamaño de textura antes de la interpolación. |
|
El dispositivo admite texturas de volumen. |
|
El dispositivo requiere que los mapas de texturas de volumen tengan dimensiones especificadas como potencias de dos. |
TextureFilterCaps
Tipo: DWORD
Funcionalidades de filtrado de texturas para una textura. Las funcionalidades de filtrado por fase reflejan qué modos de filtrado se admiten para las fases de textura al realizar la combinación de varias texturas. Este miembro puede ser cualquier combinación de las marcas de filtrado de texturas por fase definidas en D3DPTFILTERCAPS.
CubeTextureFilterCaps
Tipo: DWORD
Funcionalidades de filtrado de texturas para una textura de cubo. Las funcionalidades de filtrado por fase reflejan qué modos de filtrado se admiten para las fases de textura al realizar la combinación de varias texturas. Este miembro puede ser cualquier combinación de las marcas de filtrado de texturas por fase definidas en D3DPTFILTERCAPS.
VolumeTextureFilterCaps
Tipo: DWORD
Funcionalidades de filtrado de texturas para una textura de volumen. Las funcionalidades de filtrado por fase reflejan qué modos de filtrado se admiten para las fases de textura al realizar la combinación de varias texturas. Este miembro puede ser cualquier combinación de las marcas de filtrado de texturas por fase definidas en D3DPTFILTERCAPS.
TextureAddressCaps
Tipo: DWORD
Funcionalidades de direccionamiento de texturas para objetos de textura. Este miembro puede ser una o varias de las marcas siguientes.
VolumeTextureAddressCaps
Tipo: DWORD
Funcionalidades de direccionamiento de texturas para una textura de volumen. Este miembro puede ser uno o varios de los marcadores definidos para el miembro TextureAddressCaps.
LineCaps
Tipo: DWORD
Define las funcionalidades de los primitivos de dibujo de línea.
MaxTextureWidth
Tipo: DWORD
Ancho máximo de textura para este dispositivo.
MaxTextureHeight
Tipo: DWORD
Alto máximo de textura para este dispositivo.
MaxVolumeExtent
Tipo: DWORD
Valor máximo para cualquiera de las tres dimensiones (ancho, alto y profundidad) de una textura de volumen.
MaxTextureRepeat
Tipo: DWORD
Este número representa el intervalo máximo de los bits enteros de las coordenadas de textura posteriores a la normalización. Una coordenada de textura se almacena como un entero de 32 bits con signo con 27 bits para almacenar la parte de entero y 5 bits para la fracción de punto flotante. El índice entero máximo, 2²⁷, se usa para determinar la coordenada de textura máxima, dependiendo de cómo el hardware realiza el escalado de coordenadas de textura.
Algunos informes de hardware indican el límite D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE. En este caso, el dispositivo aplaza las coordenadas de escalado de textura por el tamaño de textura hasta después de la interpolación y la aplicación del modo de dirección de textura, por lo que el valor entero de MaxTextureRepeat puede ajustar el número de veces que una textura se puede ajustar.
De forma menos deseada, en algunos D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE de hardware no se establece y el dispositivo escala las coordenadas de textura por el tamaño de textura (con el nivel más alto de detalle) antes de la interpolación. Esto limita el número de veces que una textura se puede ajustar a MaxTextureRepeat o tamaño de textura.
Por ejemplo, supongamos que MaxTextureRepeat es igual a 32k y el tamaño de la textura es 4k. Si el hardware establece D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE, el número de veces que se puede encapsular una textura es igual a MaxTextureRepeat, que es 32k en este ejemplo. De lo contrario, el número de veces que se puede encapsular una textura es igual a MaxTextureRepeat dividido por tamaño de textura, que es 32k/4k en este ejemplo.
MaxTextureAspectRatio
Tipo: DWORD
Relación de aspecto de textura máxima compatible con el hardware, normalmente una potencia de 2.
MaxAnisotropy
Tipo: DWORD
Valor máximo válido para el estado D3DSAMP_MAXANISOTROPY fase de textura.
MaxVertexW
Tipo: float
Valor máximo de profundidad basado en W que admite el dispositivo.
GuardBandLeft
Tipo: float
Coordenada de espacio de pantalla de la región de recorte de banda de protección. Las coordenadas dentro de este rectángulo, pero fuera del rectángulo de ventanilla se recortan automáticamente.
GuardBandTop
Tipo: float
Coordenada de espacio de pantalla de la región de recorte de banda de protección. Las coordenadas dentro de este rectángulo, pero fuera del rectángulo de ventanilla se recortan automáticamente.
GuardBandRight
Tipo: float
Coordenada de espacio de pantalla de la región de recorte de banda de protección. Las coordenadas dentro de este rectángulo, pero fuera del rectángulo de ventanilla se recortan automáticamente.
GuardBandBottom
Tipo: float
Coordenada de espacio de pantalla de la región de recorte de banda de protección. Las coordenadas dentro de este rectángulo, pero fuera del rectángulo de ventanilla se recortan automáticamente.
ExtentsAdjust
Tipo: float
Número de píxeles para ajustar el rectángulo de extensiones hacia fuera para dar cabida a kernels antialiasing.
StencilCaps
Tipo: DWORD
Marcas que especifican operaciones de búfer de galería de símbolos admitidas. Se supone que las operaciones de galería de símbolos son válidas para los tres estados de representación de la operación de búfer de galería de símbolos (D3DRS_STENCILFAIL, D3DRS_STENCILPASS y D3DRS_STENCILZFAIL).
Para obtener más información, vea D3DSTENCILCAPS.
FVFCaps
Tipo: DWORD
Funcionalidades flexibles de formato de vértice.
TextureOpCaps
Tipo: DWORD
Combinación de marcas que describen las operaciones de textura admitidas por este dispositivo. Se definen las marcas siguientes.
MaxTextureBlendStages
Tipo: DWORD
Número máximo de fases de combinación de texturas admitidas en la canalización de funciones fijas. Este valor es el número de mezclas disponibles. En la canalización de píxeles programables, esto corresponde al número de registros de textura únicos que usan las instrucciones del sombreador de píxeles.
MaxSimultaneousTextures
Tipo: DWORD
Número máximo de texturas que se pueden enlazar simultáneamente a las fases del sampler de canalización de función fija. Si la misma textura está enlazada a dos fases del sampler, cuenta como dos texturas.
Este valor no tiene ningún significado en la canalización programable donde el número de fases del muestreador viene determinado por cada versión del sombreador de píxeles. Cada versión del sombreador de píxeles también determina el número de instrucciones de declaración de textura. Consulta Sombreadores de píxeles.
VertexProcessingCaps
Tipo: DWORD
Funcionalidades de procesamiento de vértices. Para un dispositivo físico determinado, esta funcionalidad puede variar en todos los dispositivos Direct3D en función de los parámetros proporcionados a CreateDevice. Consulte D3DVTXPCAPS.
MaxActiveLights
Tipo: DWORD
Número máximo de luces que pueden estar activas simultáneamente. Para un dispositivo físico determinado, esta funcionalidad puede variar en todos los dispositivos Direct3D en función de los parámetros proporcionados a CreateDevice.
MaxUserClipPlanes
Tipo: DWORD
Número máximo de planos de recorte definidos por el usuario admitidos. Este miembro puede ser 0. Para un dispositivo físico determinado, esta funcionalidad puede variar en todos los dispositivos Direct3D en función de los parámetros proporcionados a CreateDevice.
MaxVertexBlendMatrices
Tipo: DWORD
Número máximo de matrices que este dispositivo puede aplicar al realizar la mezcla de vértices multimatrix. Para un dispositivo físico determinado, esta funcionalidad puede variar en todos los dispositivos Direct3D en función de los parámetros proporcionados a CreateDevice.
MaxVertexBlendMatrixIndex
Tipo: DWORD
Valor DWORD que especifica el índice de matriz máximo en el que se pueden indexar mediante los índices por vértice. El número de matrices es MaxVertexBlendMatrixIndex + 1, que es el tamaño de la paleta de matrices. Si los valores normales están presentes en los datos de vértices que deben combinarse para la iluminación, el número de matrices es la mitad del número especificado por esta marca de funcionalidad. Si MaxVertexBlendMatrixIndex está establecido en cero, el controlador no admite la mezcla de vértices indizado. Si este valor no es cero, el intervalo válido de índices es cero a través de MaxVertexBlendMatrixIndex.
Un valor cero para MaxVertexBlendMatrixIndex indica que el controlador no admite matrices indizada.
Cuando se usa el procesamiento de vértices de software, se pueden usar 256 matrices para la mezcla de vértices indexados, con o sin mezcla normal.
Para un dispositivo físico determinado, esta funcionalidad puede variar en todos los dispositivos Direct3D en función de los parámetros proporcionados a CreateDevice.
MaxPointSize
Tipo: float
Tamaño máximo de un primitivo de punto. Si se establece en 1.0f, el dispositivo no admite el control de tamaño de punto. El intervalo es mayor o igual que 1,0f.
MaxPrimitiveCount
Tipo: DWORD
Número máximo de primitivos para cada llamada DrawPrimitive . Hay dos casos:
- Si MaxPrimitiveCount no es igual a 0xffff, puede dibujar como máximo primitivos MaxPrimitiveCount con cada llamada a draw.
- Sin embargo, si MaxPrimitiveCount es igual a 0xffff, todavía puede dibujar como máximo el primitivo MaxPrimitiveCount, pero también puede usar no más que vértices únicos de MaxPrimitiveCount (ya que cada primitivo puede usar potencialmente tres vértices diferentes).
MaxVertexIndex
Tipo: DWORD
Tamaño máximo de índices admitidos para el procesamiento de vértices de hardware. Es posible crear búferes de índice de 32 bits; sin embargo, no podrá representar con el búfer de índice a menos que este valor sea mayor que 0x0000FFFF.
MaxStreams
Tipo: DWORD
Número máximo de flujos de datos simultáneos para SetStreamSource. El intervalo válido es de 1 a 16. Tenga en cuenta que si este valor es 0, el controlador no es un controlador direct3D 9.
MaxStreamStride
Tipo: DWORD
Intervalo máximo para SetStreamSource.
VertexShaderVersion
Tipo: DWORD
Dos números que representan las versiones principal y secundaria del sombreador de vértices. Para obtener más información sobre las instrucciones admitidas para cada versión del sombreador de vértices, vea Version 1_x, Version 2_0, Version 2_0 Extended o Version 3_0.
MaxVertexShaderConst
Tipo: DWORD
Número de registros de sombreador de vértices del sombreador de vértices reservados para constantes.
PixelShaderVersion
Tipo: DWORD
Dos números que representan las versiones principal y secundaria del sombreador de píxeles. Para obtener más información sobre las instrucciones admitidas para cada versión del sombreador de píxeles, vea Version 1_x, Version 2_0, Version 2_0 Extended o Version 3_0.
PixelShader1xMaxValue
Tipo: float
Valor máximo del componente aritmético del sombreador de píxeles. Este valor indica el intervalo interno de valores admitidos para las operaciones de combinación de colores de píxeles. Dentro del intervalo al que informan, las implementaciones deben permitir que los datos pasen a través del procesamiento de píxeles sin modificar (sin clasificar). Normalmente, el valor de este miembro es un valor absoluto. Por ejemplo, un 1,0 indica que el intervalo es -1,0 a 1 y 8,0 indica que el intervalo es de -8,0 a 8,0. El valor debe ser >= 1,0 para cualquier hardware que admita sombreadores de píxeles.
DevCaps2
Tipo: DWORD
Funcionalidades del controlador de dispositivo para la teselación adaptable. Para obtener más información, consulte D3DDEVCAPS2.
MaxNpatchTessellationLevel
TBD
Reserved5
TBD
MasterAdapterOrdinal
Tipo: UINT
Este número indica qué dispositivo es el maestro de este subordinado. Este número se toma del mismo espacio que los valores del adaptador.
En el caso de la compatibilidad con varias puntas, se indicará una cabeza como la cabeza maestra y todas las demás cabezas de la misma tarjeta se denotarán cabezas subordinadas. Si hay más de un adaptador de varios encabezados en un sistema, el maestro y sus subordinados de un adaptador de varios encabezados se denominan grupo.
AdapterOrdinalInGroup
Tipo: UINT
Este número indica el orden en el que la API hace referencia a los encabezados. El valor del adaptador maestro siempre es 0. Estos valores no corresponden a los ordinales del adaptador. Solo se aplican a las cabezas de un grupo.
NumberOfAdaptersInGroup
Tipo: UINT
Número de adaptadores de este grupo de adaptadores (solo si es maestro). Será 1 para adaptadores convencionales. El valor será mayor que 1 para el adaptador maestro de una tarjeta de varios encabezados. El valor será 0 para un adaptador subordinado de una tarjeta de varios encabezados. Cada tarjeta puede tener como máximo un maestro, pero puede tener muchos subordinados.
DeclTypes
Tipo: DWORD
Combinación de uno o varios tipos de datos contenidos en una declaración de vértice. Consulte D3DDTCAPS.
NumSimultaneousRTs
Tipo: DWORD
Número de destinos de representación simultáneos. Este número debe ser al menos uno.
StretchRectFilterCaps
Tipo: DWORD
Combinación de constantes que describen las operaciones admitidas por StretchRect. Las marcas que se pueden establecer en este campo son:
Constante | Descripción |
---|---|
D3DPTFILTERCAPS_MINFPOINT | El dispositivo admite el filtrado de ejemplo de punto para minimizar los rectángulos. Este tipo de filtro se solicita mediante una llamada a StretchRect mediante D3DTEXF_POINT. |
D3DPTFILTERCAPS_MAGFPOINT | El dispositivo admite el filtrado de ejemplo de punto para aumentar los rectángulos. Este tipo de filtro se solicita mediante una llamada a StretchRect mediante D3DTEXF_POINT. |
D3DPTFILTERCAPS_MINFLINEAR | El dispositivo admite el filtrado de interpolación bilineal para reducir los rectángulos. Este tipo de filtro se solicita mediante una llamada a StretchRect mediante D3DTEXF_LINEAR. |
D3DPTFILTERCAPS_MAGFLINEAR | El dispositivo admite el filtrado de interpolación bilineal para los rectángulos de aumento. Este tipo de filtro se solicita mediante una llamada a StretchRect mediante D3DTEXF_LINEAR. |
Para obtener más información, vea D3DTEXTUREFILTERTYPE y D3DTEXTUREFILTERTYPE.
VS20Caps
Tipo: D3DVSHADERCAPS2_0
El dispositivo admite la funcionalidad extendida de sombreador de vértices 2_0. Consulte D3DVSHADERCAPS2_0.
PS20Caps
Tipo: D3DPSHADERCAPS2_0
El dispositivo admite la funcionalidad extendida de la versión 2_0 del sombreador de píxeles. Consulte D3DPSHADERCAPS2_0.
VertexTextureFilterCaps
Tipo: DWORD
El dispositivo admite la funcionalidad de filtro de textura del sombreador de vértices. Consulte D3DPTFILTERCAPS.
MaxVShaderInstructionsExecuted
Tipo: DWORD
Número máximo de instrucciones del sombreador de vértices que se pueden ejecutar al usar el control de flujo. El número máximo de instrucciones que se pueden programar es MaxVertexShader30InstructionSlots.
MaxPShaderInstructionsExecuted
Tipo: DWORD
Número máximo de instrucciones del sombreador de píxeles que se pueden ejecutar al usar el control de flujo. El número máximo de instrucciones que se pueden programar es MaxPixelShader30InstructionSlots.
MaxVertexShader30InstructionSlots
Tipo: DWORD
Número máximo de ranuras de instrucciones de sombreador de vértices admitidas. El valor máximo que se puede establecer en este límite es 32768. Los dispositivos que admiten vs_3_0 son necesarios para admitir al menos 512 ranuras de instrucción.
MaxPixelShader30InstructionSlots
Tipo: DWORD
Número máximo de ranuras de instrucción de sombreador de píxeles admitidas. El valor máximo que se puede establecer en este límite es 32768. Los dispositivos que admiten ps_3_0 son necesarios para admitir al menos 512 ranuras de instrucción.
Comentarios
Los miembros MaxTextureBlendStages y MaxSimultaneousTextures pueden parecer similares, pero contienen información diferente. El miembro MaxTextureBlendStages contiene el número total de fases de combinación de texturas admitidas por el dispositivo actual y el miembro MaxSimultaneousTextures describe cuántos de esos escenarios pueden tener texturas enlazadas mediante el método SetTexture .
Cuando el controlador rellena esta estructura, puede establecer valores para las funcionalidades de búfer de ejecución, incluso cuando la interfaz que se usa para recuperar las funcionalidades (como IDirect3DDevice9) no admite búferes de ejecución.
En general, pueden producirse problemas de rendimiento si se usa una textura y, a continuación, se modifica durante una escena. Asegúrese de que no se expulsa ninguna textura usada en el bloque BeginScene y EndScene actual a menos que sea absolutamente necesario. En el caso de un uso de textura extremadamente alto dentro de una escena, los resultados no están definidos. Esto ocurre cuando se modifica una textura que se ha usado en la escena y no hay memoria de textura de reserva disponible. Para estos sistemas, el contenido del búfer z no es válido en EndScene. Las aplicaciones no deben llamar a UpdateSurface a ni desde el búfer de reserva en este tipo de hardware dentro de un par BeginScene/EndScene. Además, las aplicaciones no deben intentar acceder al búfer z si se establece la marca de funcionalidad D3DPRASTERCAPS_ZBUFFERLESSHSR. Por último, las aplicaciones no deben bloquear el búfer de reserva ni el búfer z dentro de un par BeginScene/EndScene.
Las marcas siguientes relativas a las texturas mipmapped no se admiten en Direct3D 9.
- D3DPTFILTERCAPS_LINEAR
- D3DPTFILTERCAPS_LINEARMIPLINEAR
- D3DPTFILTERCAPS_LINEARMIPNEAREST
- D3DPTFILTERCAPS_MIPNEAREST
- D3DPTFILTERCAPS_NEAREST
Requisitos
Encabezado | d3d9caps.h |