Share via


D3DHAL_D3DEXTENDEDCAPS

This structure describes additional 3D capabilities of the driver.

typedef struct _D3DHAL_D3DEXTENDEDCAPS {
  DWORD dwSize;
  DWORD dwMinTextureWidth;
  DWORD dwMaxTextureWidth;
  DWORD dwMinTextureHeight;
  DWORD dwMaxTextureHeight;
  DWORD dwMinStippleWidth;
  DWORD dwMaxStippleWidth;
  DWORD dwMinStippleHeight;
  DWORD dwMaxStippleHeight;
  DWORD dwMaxTextureRepeat;
  DWORD dwMaxTextureAspectRatio;
  DWORD dwMaxAnisotropy;
  D3DVALUE dvGuardBandLeft;
  D3DVALUE dvGuardBandTop;
  D3DVALUE dvGuardBandRight;
  D3DVALUE dvGuardBandBottom;
  D3DVALUE dvExtentsAdjust;
  DWORD dwStencilCaps;
  DWORD dwFVFCaps;
  DWORD dwTextureOpCaps;
  WORD wMaxTextureBlendStages;
  WORD wMaxSimultaneousTextures;
  DWORD dwMaxActiveLights;
  D3DVALUE dvMaxVertexW;
  WORD wMaxUserClipPlanes;
  WORD wMaxVertexBlendMatrices;
  DWORD dwVertexProcessingCaps;
  DWORD dwReserved1;
  DWORD dwReserved2;
  DWORD dwReserved3;
  DWORD dwReserved4;
  DWORD dwReserved5;
} D3DHAL_D3DEXTENDEDCAPS; 

Members

  • dwSize
    Specifies the size in bytes of this D3DHAL_D3DEXTENDEDCAPS structure.

  • dwMinTextureWidth, dwMaxTextureWidth
    Specify the minimum and maximum texture widths supported by the driver or device. These fields are provided as hints to the application, and it is the application's responsibility to adjust texture sizes when necessary.

  • dwMinTextureHeight, dwMaxTextureHeight
    Specify the minimum and maximum texture heights supported by the driver.

  • dwMinStippleWidth, dwMaxStippleWidth
    Specify the minimum and maximum stipple widths supported by the driver.

  • dwMinStippleHeight, dwMaxStippleHeight
    Specify the minimum and maximum stipple heights supported by the driver.

  • dwMaxTextureRepeat
    Specifies the full range of integer (nonfractional) bits of the post-normalized texture indexes. If the D3DDEVCAPS_TEXREPEATNOTSCALEDBYSIZE bit is set, then the number of times a texture can be wrapped is specified by this member. If the D3DDEVCAPS_TEXREPEATNOTSCALEDBYSIZE bit is not set, then the number of time a texture can be wrapped is given by the expression: dwMaxTextureRepeat * (texture size).

  • dwMaxTextureAspectRatio
    Specifies the maximum texture aspect ratio supported by the hardware. This member is typically a power of 2.

  • dwMaxAnisotropy
    Specifies the maximum valid value for the D3DRENDERSTATE_ANISOTROPY render state.

  • dvGuardBandLeft, dvGuardBandTop, dvGuardBandRight, dvGuardBandBottom
    Specify the screen-space coordinates of the guard-band clipping region. The upper-left corner of this rectangle has coordinates (dvGuardBandLeft, dvGuardBandTop). The lower-left corner has coordinates (dvGuardBandRight, dvGuardBandBottom). Coordinates inside this rectangle but outside the viewport rectangle will automatically be clipped.

  • dvExtentsAdjust
    Specifies the number of pixels required to adjust the extents rectangle outward to accommodate antialiasing kernels.

  • dwStencilCaps
    Are flags that specify the stencil buffer operations supported by the driver or device. For further descriptions of the stencil buffer operations shown in the following table, see D3DSTENCILOP in the DirectX SDK documentation. Stencil operations are assumed to be valid for all three stencil-buffer-operation render states (D3DRENDERSTATE_STENCILFAIL, D3DRENDERSTATE_STENCILPASS, and D3DRENDERSTATE_STENCILZFAIL). This member can be a bitwise OR of any of the following values.

    Value Stencil Buffer Operation
    D3DSTENCILCAPS_DECR The D3DSTENCILOP_DECR operation is supported.
    D3DSTENCILCAPS_DECRSAT The D3DSTENCILOP_DECRSAT operation is supported.
    D3DSTENCILCAPS_INCR The D3DSTENCILOP_INCR operation is supported.
    D3DSTENCILCAPS_INCRSAT The D3DSTENCILOP_INCRSAT operation is supported.
    D3DSTENCILCAPS_INVERT The D3DSTENCILOP_INVERT operation is supported.
    D3DSTENCILCAPS_KEEP The D3DSTENCILOP_KEEP operation is supported.
    D3DSTENCILCAPS_REPLACE The D3DSTENCILOP_REPLACE operation is supported.
    D3DSTENCILCAPS_ZERO The D3DSTENCILOP_ZERO operation is supported.
  • dwFVFCaps
    Specifies the number of texture coordinates that the driver can process. This value can be an integer in the range zero through 8, where zero indicates that the driver does not support texturing, 1 indicates that the driver can process only one set of texture coordinates, 2 indicates that the driver can process two sets of texture coordinates, and so on.

    A driver must be able to parse all texture coordinates present in the vertex data regardless of the number of texture coordinates that the driver actually uses. The driver should use the index provided with the D3DTSS_TEXCOORDINDEX value of the D3DTEXTURESTAGESTATETYPE enumeration, described in the DirectX SDK documentation, to determine what texture coordinate set to use when rendering.

  • dwTextureOpCaps
    Specify the texture operations supported by the device. See D3DTEXTUREOP in the DirectX SDK documentation for descriptions of the texture operations listed in the following table. This member can be a bitwise OR of the following values.

    Value Texture Operation Supported
    D3DTEXOPCAPS_ADD The D3DTOP_ADD texture blending operation is supported by this device.
    D3DTEXOPCAPS_ADDSIGNED The D3DTOP_ADDSIGNED texture blending operation is supported by this device.
    D3DTEXOPCAPS_ADDSIGNED2X The D3DTOP_ADDSIGNED2X texture blending operation is supported by this device.
    D3DTEXOPCAPS_ADDSMOOTH The D3DTOP_ADDSMOOTH texture blending operation is supported by this device.
    D3DTEXOPCAPS_BLENDCURRENTALPHA The D3DTOP_BLENDCURRENTALPHA texture blending operation is supported by this device.
    D3DTEXOPCAPS_BLENDDIFFUSEALPHA The D3DTOP_BLENDDIFFUSEALPHA texture blending operation is supported by this device.
    D3DTEXOPCAPS_BLENDFACTORALPHA The D3DTOP_BLENDFACTORALPHA texture blending operation is supported by this device.
    D3DTEXOPCAPS_BLENDTEXTUREALPHA The D3DTOP_BLENDTEXTUREALPHA texture blending operation is supported by this device.
    D3DTEXOPCAPS_BLENDTEXTUREALPHAPM The D3DTOP_BLENDTEXTUREALPHAPM texture blending operation is supported by this device.
    D3DTEXOPCAPS_BUMPENVMAP. The D3DTOP_BUMPENVMAP texture blending operation is supported by this device.
    D3DTEXOPCAPS_BUMPENVMAPLUMINANCE The D3DTOP_BUMPENVMAPLUMINANCE texture blending operation is supported by this device.
    D3DTEXOPCAPS_DISABLE The D3DTOP_DISABLE texture blending operation is supported by this device.
    D3DTEXOPCAPS_DOTPRODUCT3 The D3DTOP_DOTPRODUCT3 texture blending operation is supported by this device.
    D3DTEXOPCAPS_MODULATE The D3DTOP_MODULATE texture blending operation is supported by this device.
    D3DTEXOPCAPS_MODULATE2X The D3DTOP_MODULATE2X texture blending operation is supported by this device.
    D3DTEXOPCAPS_MODULATE4X The D3DTOP_MODULATE4X texture blending operation is supported by this device.
    D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR The D3DTOP_MODULATEALPHA_ADDCOLOR texture blending operation is supported by this device.
    D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA The D3DTOP_MODULATEALPHA_ADDCOLOR texture blending operation is supported by this device.
    D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR The D3DTOP_MODULATEINVALPHA_ADDCOLOR texture blending operation is supported by this device.
    D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA The D3DTOP_MODULATEINVCOLOR_ADDALPHA texture blending operation is supported by this device.
    D3DTEXOPCAPS_PREMODULATE The D3DTOP_PREMODULATE texture blending operation is supported by this device.
    D3DTEXOPCAPS_SELECTARG1 The D3DTOP_SELECTARG1 texture blending operation is supported by this device.
    D3DTEXOPCAPS_SELECTARG2 The D3DTOP_SELECTARG2 texture blending operation is supported by this device.
    D3DTEXOPCAPS_SUBTRACT The D3DTOP_SUBTRACT texture blending operation is supported by this device.
  • wMaxTextureBlendStages
    Specifies the maximum number of texture blending stages supported by this device.

  • wMaxSimultaneousTextures
    Specifies the maximum number of textures that can be simultaneously bound to the texture blending stages for this device. That is, wMaxSimultaneousTextures specifies how many of the texture stages can have textures bound to them through the lDirect3DDevice7::SetTexture method. See the Windows SDK documentation for more information about this method.

  • dwMaxActiveLights
    Specifies the maximum number of active lights supported by this device. This only needs to be specified in drivers that support hardware transform and lighting (and therefore specify D3DDEVCAPS_HWTRANSFORMANDLIGHT in their device caps).

  • dvMaxVertexW
    Specifies the maximum W range supported by this device. This only needs to be specified in drivers that support W buffering (and therefore specify D3DPRASTERCAPS_WBUFFER in their rasterization caps).

  • wMaxUserClipPlanes
    Specifies the maximum number of user-defined clip planes supported.

  • wMaxVertexBlendMatrices
    Specifies the number of world matrices supported for vertex blending.

  • dwVertexProcessingCaps
    Specifies the vertex processing caps supported.

  • dwReserved1, dwReserved2, dwReserved3, dwReserved4, dwReserved5
    Reserved for system use.

Remarks

The driver allocates and zero-initializes this structure and sets appropriate values in the members it supports. The driver's GetDriverInfo function returns a pointer to this structure when that function is called with the GUID_D3DExtendedCaps GUID.

When the driver fills in this structure, it can set values for execute buffer capabilities even when the interface being used to retrieve the capabilities (such as lDirect3DDevice3) doesn't support execute buffers.

Requirements

OS Versions: Windows CE .NET 4.0 and later.
Header: D3dhal.h.

See Also

D3DSTENCILOP | D3DTEXTURESTAGESTATETYPE | D3DTEXTUREOP | GetDriverInfo | D3DHAL_XXX Structures

 Last updated on Tuesday, May 18, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.