Share via


D3DDEVICEDESC_V1

This structure describes the 3D capabilities of a device.

typedef struct _D3DDeviceDesc_V1 {
  DWORD dwSize;
  DWORD dwFlags;
  D3DCOLORMODEL dcmColorModel;
  DWORD dwDevCaps;
  D3DTRANSFORMCAPS dtcTransformCaps;
  BOOL bClipping;
  D3DLIGHTINGCAPS dlcLightingCaps;
  D3DPRIMCAPS dpcLineCaps;
  D3DPRIMCAPS dpcTriCaps;
  DWORD dwDeviceRenderBitDepth;
  DWORD dwDeviceZBufferBitDepth;
  DWORD dwMaxBufferSize;
  DWORD dwMaxVertexCount;
} D3DDEVICEDESC_V1, *LPD3DDEVICEDESC_V1;

Members

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

  • dwFlags
    Identifies the members of this structure that contain valid data. This member can be a bitwise OR of any of the following values.

    Value Description
    D3DDD_BCLIPPING The bClipping member contains valid data.
    D3DDD_COLORMODEL The dcmColorModel member contains valid data.
    D3DDD_DEVCAPS The dwDevCaps member contains valid data.
    D3DDD_DEVICERENDERBITDEPTH The dwDeviceRenderBitDepth member contains valid data.
    D3DDD_DEVICEZBUFFERBITDEPTH The dwDeviceZBufferBitDepth member contains valid data.
    D3DDD_LIGHTINGCAPS The dlcLightingCaps member contains valid data.
    D3DDD_LINECAPS The dpcLineCaps member contains valid data.
    D3DDD_MAXBUFFERSIZE The dwMaxBufferSize member contains valid data.
    D3DDD_MAXVERTEXCOUNT The dwMaxVertexCount member contains valid data.
    D3DDD_TRANSFORMCAPS The dtcTransformCaps member contains valid data.
    D3DDD_TRICAPS The dpcTriCaps member contains valid data.
  • dcmColorModel
    Specifies the device's color model.

  • dwDevCaps
    Identifies the capabilities of the device. This member can be a bitwise OR of any of the following values.

    Value Description
    D3DDEVCAPS_CANBLTSYSTONONLOCAL The device supports a TexBlt from system memory to nonlocal video memory.
    D3DDEVCAPS_CANRENDERAFTERFLIP The device can queue rendering commands after a page flip. Devices must support this capability on Windows CE .NET and later, meaning that the driver would always set this flag.
    D3DDEVCAPS_DRAWPRIMITIVES2 The device can support D3dDrawPrimitives2.
    D3DDEVCAPS_DRAWPRIMITIVES2EX The device can support Extended D3dDrawPrimitives2; for example, a DX7-compliant driver.
    D3DDEVCAPS_DRAWPRIMTLVERTEX The device can draw TLVERTEX primitives. This flag is obsolete but must be set by the driver.
    D3DDEVCAPS_EXECUTESYSTEMMEMORY The device can use execute buffers from system memory. The driver must always set this bit.
    D3DDEVCAPS_EXECUTEVIDEOMEMORY The device can use execute buffers from display memory. The driver must never set this bit.
    D3DDEVCAPS_FLOATTLVERTEX The device accepts floating point for post-transform vertex data. This flag is obsolete but must be set by the driver.
    D3DDEVCAPS_HWRASTERIZATION The device has hardware acceleration for rasterization.
    D3DDEVCAPS_HWTRANSFORMANDLIGHT The device can support transformation and lighting in hardware. D3DDEVCAPS_DRAWPRIMITIVES2EX must also be set.
    D3DDEVCAPS_SEPARATETEXTUREMEMORIES The device is texturing from separate memory pools.
    D3DDEVCAPS_SORTDECREASINGZ The device needs data sorted for decreasing depth.
    D3DDEVCAPS_SORTEXACT The device needs data sorted exactly.
    D3DDEVCAPS_SORTINCREASINGZ The device needs data sorted for increasing depth.
    D3DDEVCAPS_TEXTURENONLOCALVIDEOMEMORY The device can texture from nonlocal video memory.
    D3DDEVCAPS_TLVERTEXSYSTEMMEMORY The device can use buffers from system memory for transformed and lit vertices. This flag is obsolete but must be set by the driver.
    D3DDEVCAPS_TLVERTEXVIDEOMEMORY The device can use buffers from display memory for transformed and lit vertices. This flag is obsolete and must not be set by the driver.
    D3DDEVCAPS_TEXTURESYSTEMMEMORY The device can retrieve textures from system memory.
    D3DDEVCAPS_TEXTUREVIDEOMEMORY The device can retrieve textures from device memory.
  • dtcTransformCaps
    Specifies a D3DTRANSFORMCAPS structure that specifies the transformation capabilities of the device. The driver must set the dwCaps member of that structure to zero.

  • bClipping
    Is set TRUE by the driver if the device can perform 3D clipping.

  • dlcLightingCaps
    Is a D3DLIGHTINGCAPS structure that specifies the lighting capabilities of the device. The driver must set the dwCaps, dwLightingModel, and dwNumLights members of that structure to zero.

  • dpcLineCaps
    Specifies a D3DPRIMCAPS structure that defines the drawing capabilities of the device for line primitives.

  • dpcTriCaps
    Specifies a D3DPRIMCAPS structure that defines the drawing capabilities of the device for triangle primitives.

  • dwDeviceRenderBitDepth
    Specifies the device's rendering bit-depth. This member can be a bitwise OR of the following DirectDraw® bit-depth constants: DDBD_8, DDBD_16, DDBD_24, or DDBD_32.

  • dwDeviceZBufferBitDepth
    Specifies the device's z-buffer bit-depth. This member can be a bitwise OR of the following DirectDraw bit-depth constants: DDBD_8, DDBD_16, DDBD_24, or DDBD_32.

  • dwMaxBufferSize
    Must be set to zero.

  • dwMaxVertexCount
    Specifies the maximum number of vertices that the device can handle in a single call to D3dDrawPrimitives2.

Remarks

The driver's HALInit function returns this information in the D3DHAL_GLOBALDRIVERDATA structure that the lpD3DGlobalDriverData member of the DDHALINFO structure points to.

The Direct3D run time constructs the application-level D3DDEVICEDESC7 structure (documented in the Windows SDK documentation) from the information returned in the D3DDEVICEDESC_V1 structure and the extended capabilities queried through the driver's GetDriverInfo function. While some of the dwDevCaps flags are obsolete at the driver level, the driver must set them appropriately in order for applications to work correctly.

Requirements

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

See Also

D3dDrawPrimitives2 | D3DLIGHTINGCAPS | D3DPRIMCAPS | D3dDrawPrimitives2 | HALInit | D3DHAL_GLOBALDRIVERDATA | DDHALINFO | GetDriverInfo | Other Direct3D Driver Structures

 Last updated on Tuesday, May 18, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.