DDCAPS_DX3 structure (ddraw.h)

The DDCAPS structure represents the capabilities of the hardware exposed through the DirectDraw object. This structure contains a DDSCAPS2 structure used in this context to describe what kinds of DirectDrawSurface objects can be created. It might not be possible to create all the surfaces described by these capabilities simultaneously. This structure is used with the IDirectDraw7::GetCaps method.

The Ddraw.h header file contains multiple versions of this structure (for example, DDCAPS_DX7). For more information about how to determine which version to use, see Remarks.

Syntax

typedef struct _DDCAPS_DX3 {
  DWORD   dwSize;
  DWORD   dwCaps;
  DWORD   dwCaps2;
  DWORD   dwCKeyCaps;
  DWORD   dwFXCaps;
  DWORD   dwFXAlphaCaps;
  DWORD   dwPalCaps;
  DWORD   dwSVCaps;
  DWORD   dwAlphaBltConstBitDepths;
  DWORD   dwAlphaBltPixelBitDepths;
  DWORD   dwAlphaBltSurfaceBitDepths;
  DWORD   dwAlphaOverlayConstBitDepths;
  DWORD   dwAlphaOverlayPixelBitDepths;
  DWORD   dwAlphaOverlaySurfaceBitDepths;
  DWORD   dwZBufferBitDepths;
  DWORD   dwVidMemTotal;
  DWORD   dwVidMemFree;
  DWORD   dwMaxVisibleOverlays;
  DWORD   dwCurrVisibleOverlays;
  DWORD   dwNumFourCCCodes;
  DWORD   dwAlignBoundarySrc;
  DWORD   dwAlignSizeSrc;
  DWORD   dwAlignBoundaryDest;
  DWORD   dwAlignSizeDest;
  DWORD   dwAlignStrideAlign;
  DWORD   dwRops[DD_ROP_SPACE];
  DDSCAPS ddsCaps;
  DWORD   dwMinOverlayStretch;
  DWORD   dwMaxOverlayStretch;
  DWORD   dwMinLiveVideoStretch;
  DWORD   dwMaxLiveVideoStretch;
  DWORD   dwMinHwCodecStretch;
  DWORD   dwMaxHwCodecStretch;
  DWORD   dwReserved1;
  DWORD   dwReserved2;
  DWORD   dwReserved3;
  DWORD   dwSVBCaps;
  DWORD   dwSVBCKeyCaps;
  DWORD   dwSVBFXCaps;
  DWORD   dwSVBRops[DD_ROP_SPACE];
  DWORD   dwVSBCaps;
  DWORD   dwVSBCKeyCaps;
  DWORD   dwVSBFXCaps;
  DWORD   dwVSBRops[DD_ROP_SPACE];
  DWORD   dwSSBCaps;
  DWORD   dwSSBCKeyCaps;
  DWORD   dwSSBFXCaps;
  DWORD   dwSSBRops[DD_ROP_SPACE];
  DWORD   dwReserved4;
  DWORD   dwReserved5;
  DWORD   dwReserved6;
} DDCAPS_DX3;

Members

dwSize

Size of the structure, in bytes. This member must be initialized before the structure is used.

dwCaps

This value consists of one or more of the following flags that specify hardware and driver capabilities.

DDCAPS_3D

The display hardware has 3-D acceleration.

DDCAPS_ALIGNBOUNDARYDEST

DirectDraw supports only those overlay destination rectangles with the x-axis aligned to the dwAlignBoundaryDest boundaries of the surface.

DDCAPS_ALIGNBOUNDARYSRC

DirectDraw supports only those overlay source rectangles with the x-axis aligned to the dwAlignBoundarySrc boundaries of the surface.

DDCAPS_ALIGNSIZEDEST

DirectDraw supports only those overlay destination rectangles whose x-axis sizes, in pixels, are dwAlignSizeDest multiples.

DDCAPS_ALIGNSIZESRC

DirectDraw supports only those overlay source rectangles whose x-axis sizes, in pixels, are dwAlignSizeSrc multiples.

DDCAPS_ALIGNSTRIDE

DirectDraw creates display memory surfaces that have a stride alignment equal to the dwAlignStrideAlign value.

DDCAPS_ALPHA

The display hardware supports alpha-only surfaces.

DDCAPS_BANKSWITCHED

The display hardware is bank-switched and is potentially very slow at random access to display memory.

DDCAPS_BLT

Display hardware is capable of bit block transfer (bitblt) operations.

DDCAPS_BLTCOLORFILL

Display hardware is capable of color filling with a blitter.

DDCAPS_BLTDEPTHFILL

Display hardware is capable of depth filling z-buffers with a blitter.

DDCAPS_BLTFOURCC

Display hardware is capable of color-space conversions during bitblt operations.

DDCAPS_BLTQUEUE

Display hardware is capable of asynchronous bitblt operations.

DDCAPS_BLTSTRETCH

Display hardware is capable of stretching during bitblt operations.

DDCAPS_CANBLTSYSMEM

Display hardware is capable of blitting to or from system memory.

DDCAPS_CANCLIP

Display hardware is capable of clipping with blitting.

DDCAPS_CANCLIPSTRETCHED

Display hardware is capable of clipping while stretch blitting.

DDCAPS_COLORKEY

Supports some form of color key in either overlay or bitblt operations. More specific color-key capability information can be found in the dwCKeyCaps member.

DDCAPS_COLORKEYHWASSIST

The color key is partially hardware-assisted. This means that other resources (CPU or video memory) might be used. If this bit is not set, full hardware support is in place.

DDCAPS_GDI

Display hardware is shared with GDI.

DDCAPS_NOHARDWARE

There is no hardware support.

DDCAPS_OVERLAY

Display hardware supports overlays.

DDCAPS_OVERLAYCANTCLIP

Display hardware supports overlays but cannot clip them.

DDCAPS_OVERLAYFOURCC

Overlay hardware is capable of color-space conversions during overlay operations.

DDCAPS_OVERLAYSTRETCH

Overlay hardware is capable of stretching. The dwMinOverlayStretch and dwMaxOverlayStretch members contain valid data.

DDCAPS_PALETTE

DirectDraw is capable of creating and supporting DirectDrawPalette objects for surfaces other than the primary surface.

DDCAPS_PALETTEVSYNC

DirectDraw is capable of updating a palette synchronized with the vertical refresh.

DDCAPS_READSCANLINE

Display hardware is capable of returning the current scan line.

DDCAPS_VBI

Display hardware is capable of generating a vertical-blank interrupt.

DDCAPS_ZBLTS

Supports the use of z-buffers with bitblt operations.

DDCAPS_ZOVERLAYS

Supports the use of the IDirectDrawSurface7::UpdateOverlayZOrder method as a z-value for overlays to control their layering.

dwCaps2

This value consists of one or more of the following flags that specify more hardware and driver capabilities.

DDCAPS2_AUTOFLIPOVERLAY

The overlay can be automatically flipped to the next surface in the flipping chain each time that a video port VSYNC occurs, allowing the video port and the overlay to double-buffer the video without CPU overhead. This option is only valid when the surface is receiving data from a video port. If the video port data is noninterlaced or noninterleaved, it flips on every VSYNC. If the data is being interleaved in memory, it flips on every other VSYNC.

DDCAPS2_CANBOBHARDWARE

The overlay hardware can display each field of an interlaced video stream individually.

DDCAPS2_CANBOBINTERLEAVED

The overlay hardware can display each field of an interlaced video stream individually while it is interleaved in memory without causing any artifacts that might normally occur without special hardware support. This option is only valid when the surface is receiving data from a video port and the video is zoomed at least twice in the vertical direction.

DDCAPS2_CANBOBNONINTERLEAVED

The overlay hardware can display each field of an interlaced video stream individually while it is not interleaved in memory without causing any artifacts that might normally occur without special hardware support. This option is only valid when the surface is receiving data from a video port and the video is zoomed at least twice in the vertical direction.

DDCAPS2_CANCALIBRATEGAMMA

The system has a calibrator installed that can automatically adjust the gamma ramp so that the result is identical on all systems that have a calibrator. To invoke the calibrator when setting new gamma levels, use the DDSGR_CALIBRATE flag when calling the IDirectDrawGammaControl::SetGammaRamp method. Calibrating gamma ramps incurs some processing overhead and should not be used frequently.

DDCAPS2_CANDROPZ16BIT

Sixteen-bit RGBZ values can be converted into 16-bit RGB values. (The system does not support 8-bit conversions.)

DDCAPS2_CANFLIPODDEVEN

The driver is capable of performing odd and even flip operations, as specified by the DDFLIP_ODD and DDFLIP_EVEN flags that are used with the IDirectDrawSurface7::Flip method.

DDCAPS2_CANMANAGETEXTURE

The Direct3D texture manager uses this capability to decide whether to put managed surfaces in nonlocal video memory. If the capability is set, the texture manager puts managed surfaces in nonlocal video memory. Drivers that cannot texture from local video memory should not set this capability.

DDCAPS2_CANRENDERWINDOWED

The driver is capable of rendering in windowed mode.

DDCAPS2_CERTIFIED

Display hardware is certified.

DDCAPS2_COLORCONTROLPRIMARY

The primary surface contains color controls (for instance, gamma).

DDCAPS2_COLORCONTROLOVERLAY

The overlay surface contains color controls (such as brightness and sharpness).

DDCAPS2_COPYFOURCC

The driver supports blitting any FOURCC surface to another surface of the same FOURCC.

DDCAPS2_FLIPINTERVAL

The driver responds to the DDFLIP_INTERVAL* flags. (For more information about these flags, see IDirectDrawSurface7::Flip).

DDCAPS2_FLIPNOVSYNC

The driver responds to the DDFLIP_NOVSYNC flag (For more information about this flag, see IDirectDrawSurface7::Flip).

DDCAPS2_NO2DDURING3DSCENE

Two-dimensional operations such as IDirectDrawSurface7::Blt and IDirectDrawSurface7::Lock cannot be performed on any surfaces that Direct3D is using between calls to the BeginScene and EndScene methods.

DDCAPS2_NONLOCALVIDMEM

The display driver supports surfaces in nonlocal video memory.

DDCAPS2_NONLOCALVIDMEMCAPS

Bitblt capabilities for nonlocal video-memory surfaces differ from local video-memory surfaces. If this flag is present, the DDCAPS2_NONLOCALVIDMEM flag is also present.

DDCAPS2_NOPAGELOCKREQUIRED

DMA bitblt operations are supported on system-memory surfaces that are not page-locked.

DDCAPS2_PRIMARYGAMMA

Supports dynamic gamma ramps for the primary surface.

DDCAPS2_STEREO

New for DirectX 7.0. Turns on the dwSVCaps bit to support stereo mode. The driver can do stereo in at least one mode other than the current mode. The application can use IDirectDraw7::GetDisplayMode or IDirectDraw7::EnumDisplayModes to get per-mode stereo information.

DDCAPS2_TEXMANINNONLOCALVIDMEM

New for DirectX 7.0. The Direct3D texture manager uses this capability to decide whether to put managed surfaces in nonlocal video memory. If the capability is set, the texture manager puts managed surfaces in nonlocal video memory. Drivers that cannot texture from local video memory should not set this capability.

DDCAPS2_VIDEOPORT

Display hardware supports live video.

DDCAPS2_WIDESURFACES

The display surface supports surfaces wider than the primary surface.

dwCKeyCaps

This value consists of one or more of the following flags that specify color-key capabilities.

DDCKEYCAPS_DESTBLT

Supports transparent blitting with a color key that identifies the replaceable bits of the destination surface for RGB colors.

DDCKEYCAPS_DESTBLTCLRSPACE

Supports transparent blitting with a color space that identifies the replaceable bits of the destination surface for RGB colors.

DDCKEYCAPS_DESTBLTCLRSPACEYUV

Supports transparent blitting with a color space that identifies the replaceable bits of the destination surface for YUV colors.

DDCKEYCAPS_DESTBLTYUV

Supports transparent blitting with a color key that identifies the replaceable bits of the destination surface for YUV colors.

DDCKEYCAPS_DESTOVERLAY

Supports overlaying with color keying of the replaceable bits of the destination surface to be overlaid for RGB colors.

DDCKEYCAPS_DESTOVERLAYCLRSPACE

Supports a color space as the color key for the destination of RGB colors.

DDCKEYCAPS_DESTOVERLAYCLRSPACEYUV

Supports a color space as the color key for the destination of YUV colors.

DDCKEYCAPS_DESTOVERLAYONEACTIVE

Supports only one active destination color key value for visible overlay surfaces.

DDCKEYCAPS_DESTOVERLAYYUV

Supports overlaying, using color keying of the replaceable bits of the destination surface to be overlaid for YUV colors.

DDCKEYCAPS_NOCOSTOVERLAY

Indicates that there are no bandwidth trade-offs for using the color key with an overlay.

DDCKEYCAPS_SRCBLT

Supports transparent blitting, using the color key for the source with this surface for RGB colors.

DDCKEYCAPS_SRCBLTCLRSPACE

Supports transparent blitting, using a color space for the source with this surface for RGB colors.

DDCKEYCAPS_SRCBLTCLRSPACEYUV

Supports transparent blitting, using a color space for the source with this surface for YUV colors.

DDCKEYCAPS_SRCBLTYUV

Supports transparent blitting, using the color key for the source with this surface for YUV colors.

DDCKEYCAPS_SRCOVERLAY

Supports overlaying, using the color key for the source with this overlay surface for RGB colors.

DDCKEYCAPS_SRCOVERLAYCLRSPACE

Supports overlaying, using a color space as the source color key for the overlay surface for RGB colors.

DDCKEYCAPS_SRCOVERLAYCLRSPACEYUV

Supports overlaying, using a color space as the source color key for the overlay surface for YUV colors.

DDCKEYCAPS_SRCOVERLAYONEACTIVE

Supports only one active source color key value for visible overlay surfaces.

DDCKEYCAPS_SRCOVERLAYYUV

Supports overlaying, using the color key for the source with this overlay surface for YUV colors.

dwFXCaps

This value consists of one or more of the following flags that specify driver stretching and effects capabilities.

DDFXCAPS_BLTALPHA

Supports alpha-blended bitblt operations.

DDFXCAPS_BLTARITHSTRETCHY

Uses arithmetic operations, rather than pixel-doubling techniques, to stretch and shrink surfaces during a bitblt operation. Occurs along the y-axis (vertically).

DDFXCAPS_BLTARITHSTRETCHYN

Uses arithmetic operations, rather than pixel-doubling techniques, to stretch and shrink surfaces during a bitblt operation. Occurs along the y-axis (vertically), and works only for integer stretching (×1, ×2, and so on).

DDFXCAPS_BLTFILTER

Driver can do surface-reconstruction filtering for warped bitblts.

DDFXCAPS_BLTMIRRORLEFTRIGHT

Supports mirroring left to right in a bitblt operation.

DDFXCAPS_BLTMIRRORUPDOWN

Supports mirroring top to bottom in a bitblt operation.

DDFXCAPS_BLTROTATION

Supports arbitrary rotation in a bitblt operation.

DDFXCAPS_BLTROTATION90

Supports 90-degree rotations in a bitblt operation.

DDFXCAPS_BLTSHRINKX

Supports arbitrary shrinking of a surface along the x-axis (horizontally). This flag is valid only for bitblt operations.

DDFXCAPS_BLTSHRINKXN

Supports integer shrinking (×1, ×2, and so on) of a surface along the x-axis (horizontally). This flag is valid only for bitblt operations.

DDFXCAPS_BLTSHRINKY

Supports arbitrary shrinking of a surface along the y-axis (vertically). This flag is valid only for bitblt operations.

DDFXCAPS_BLTSHRINKYN

Supports integer shrinking (×1, ×2, and so on) of a surface along the y-axis (vertically). This flag is valid only for bitblt operations.

DDFXCAPS_BLTSTRETCHX

Supports arbitrary stretching of a surface along the x-axis (horizontally). This flag is valid only for bitblt operations.

DDFXCAPS_BLTSTRETCHXN

Supports integer stretching (×1, ×2, and so on) of a surface along the x-axis (horizontally). This flag is valid only for bitblt operations.

DDFXCAPS_BLTSTRETCHY

Supports arbitrary stretching of a surface along the y-axis (vertically). This flag is valid only for bitblt operations.

DDFXCAPS_BLTSTRETCHYN

Supports integer stretching (×1, ×2, and so on) of a surface along the y-axis (vertically). This flag is valid only for bitblt operations.

DDFXCAPS_BLTTRANSFORM

Supports geometric transformations (or warps) for blitted sprites. Transformations are not currently supported for explicit bitblt operations.

DDFXCAPS_OVERLAYALPHA

Supports alpha blending for overlay surfaces.

DDFXCAPS_OVERLAYARITHSTRETCHY

Uses arithmetic operations, rather than pixel-doubling techniques, to stretch and shrink overlay surfaces. Occurs along the y-axis (vertically).

DDFXCAPS_OVERLAYARITHSTRETCHYN

Uses arithmetic operations, rather than pixel-doubling techniques, to stretch and shrink overlay surfaces. Occurs along the y-axis (vertically), and works only for integer stretching (×1, ×2, and so on).

DDFXCAPS_OVERLAYFILTER

Supports surface-reconstruction filtering for warped overlay sprites. Filtering is not currently supported for explicitly displayed overlay surfaces (those displayed with calls to IDirectDrawSurface7::UpdateOverlay).

DDFXCAPS_OVERLAYMIRRORLEFTRIGHT

Supports mirroring of overlays across the vertical axis.

DDFXCAPS_OVERLAYMIRRORUPDOWN

Supports mirroring of overlays across the horizontal axis.

DDFXCAPS_OVERLAYSHRINKX

Supports arbitrary shrinking of a surface along the x-axis (horizontally). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that shrinking is available.

DDFXCAPS_OVERLAYSHRINKXN

Supports integer shrinking (×1, ×2, and so on) of a surface along the x-axis (horizontally). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that shrinking is available.

DDFXCAPS_OVERLAYSHRINKY

Supports arbitrary shrinking of a surface along the y-axis (vertically). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that shrinking is available.

DDFXCAPS_OVERLAYSHRINKYN

Supports integer shrinking (×1, ×2, and so on) of a surface along the y-axis (vertically). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that shrinking is available.

DDFXCAPS_OVERLAYSTRETCHX

Supports arbitrary stretching of a surface along the x-axis (horizontally). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that stretching is available.

DDFXCAPS_OVERLAYSTRETCHXN

Supports integer stretching (×1, ×2, and so on) of a surface along the x-axis (horizontally). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that stretching is available.

DDFXCAPS_OVERLAYSTRETCHY

Supports arbitrary stretching of a surface along the y-axis (vertically). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that stretching is available.

DDFXCAPS_OVERLAYSTRETCHYN

Supports integer stretching (×1, ×2, and so on) of a surface along the y-axis (vertically). This flag is valid only for DDSCAPS_OVERLAY surfaces. This flag indicates only the capabilities of a surface; it does not indicate that stretching is available.

DDFXCAPS_OVERLAYTRANSFORM

Supports geometric transformations (or warps) for overlay sprites. Transformations are not currently supported for explicitly displayed overlay surfaces (those displayed with calls to IDirectDrawSurface7::UpdateOverlay).

dwFXAlphaCaps

This value consists of one or more of the following flags that specify driver alpha capabilities.

DDFXALPHACAPS_BLTALPHAEDGEBLEND

Supports alpha blending around the edge of a source color-keyed surface. Used for bitblt operations.

DDFXALPHACAPS_BLTALPHAPIXELS

Supports alpha information in pixel format. The bit depth of alpha information in the pixel format can be 1, 2, 4, or 8. The alpha value becomes more opaque as the alpha value increases. Regardless of the depth of the alpha information, 0 is always the fully transparent value. Used for bitblt operations.

DDFXALPHACAPS_BLTALPHAPIXELSNEG

Supports alpha information in pixel format. The bit depth of alpha information in the pixel format can be 1, 2, 4, or 8. The alpha value becomes more transparent as the alpha value increases. Regardless of the depth of the alpha information, 0 is always the fully opaque value. This flag can be used only if DDCAPS_ALPHA is set. Used for bitblt operations.

DDFXALPHACAPS_BLTALPHASURFACES

Supports alpha-only surfaces. The bit depth of an alpha-only surface can be 1, 2, 4, or 8. The alpha value becomes more opaque as the alpha value increases. Regardless of the depth of the alpha information, 0 is always the fully transparent value. Used for bitblt operations.

DDFXALPHACAPS_BLTALPHASURFACESNEG

Indicates that the alpha channel becomes more transparent as the alpha value increases. The depth of the alpha channel-data can be 1, 2, 4, or 8. Regardless of the depth of the alpha information, 0 is always the fully opaque value. This flag can be set only if DDCAPS_ALPHA has been set. Used for bitblt operations.

DDFXALPHACAPS_OVERLAYALPHAEDGEBLEND

Supports alpha blending around the edge of a source color-keyed surface. Used for overlays.

DDFXALPHACAPS_OVERLAYALPHAPIXELS

Supports alpha information in pixel format. The bit depth of alpha information in pixel format can be 1, 2, 4, or 8. The alpha value becomes more opaque as the alpha value increases. Regardless of the depth of the alpha information, 0 is always the fully transparent value. Used for overlays.

DDFXALPHACAPS_OVERLAYALPHAPIXELSNEG

Supports alpha information in pixel format. The bit depth of alpha information in pixel format can be 1, 2, 4, or 8. The alpha value becomes more transparent as the alpha value increases. Regardless of the depth of the alpha information, 0 is always the fully opaque value. This flag can be used only if DDCAPS_ALPHA has been set. Used for overlays.

DDFXALPHACAPS_OVERLAYALPHASURFACES

Supports alpha-only surfaces. The bit depth of an alpha-only surface can be 1, 2, 4, or 8. The alpha value becomes more opaque as the alpha value increases. Regardless of the depth of the alpha information, 0 is always the fully transparent value. Used for overlays.

DDFXALPHACAPS_OVERLAYALPHASURFACESNEG

Indicates that the alpha channel becomes more transparent as the alpha value increases. The depth of the alpha-channel data can be 1, 2, 4, or 8. Regardless of the depth of the alpha information, 0 is always the fully opaque value. This flag can be used only if DDCAPS_ALPHA has been set. Used for overlays.

dwPalCaps

This value consists of one or more of the following flags that specify palette capabilities.

DDPCAPS_1BIT

Supports palettes that contain 1-bit color entries (two colors).

DDPCAPS_2BIT

Supports palettes that contain 2-bit color entries (four colors).

DDPCAPS_4BIT

Supports palettes that contain 4-bit color entries (16 colors).

DDPCAPS_8BIT

Supports palettes that contain 8-bit color entries (256 colors).

DDPCAPS_8BITENTRIES

Specifies an index to an 8-bit color index. This field is valid only when used with the DDPCAPS_1BIT, DDPCAPS_2BIT, or DDPCAPS_4BIT capability and when the target surface is 8 bits per pixel (bpp). Each color entry is 1 byte long and is an index to an 8-bpp palette on the destination surface.

DDPCAPS_ALPHA

Supports palettes that include an alpha component. For alpha-capable palettes, the peFlags member of each PALETTEENTRY structure that the palette contains is to be interpreted as a single 8-bit alpha value (in addition to the color data in the peRed, peGreen, and peBlue members). A palette created with this flag can be attached only to a texture surface.

DDPCAPS_ALLOW256

Supports palettes that can have all 256 entries defined.

DDPCAPS_PRIMARYSURFACE

The palette is attached to the primary surface. Changing the palette has an immediate effect on the display unless the DDPCAPS_VSYNC capability is specified and supported.

DDPCAPS_PRIMARYSURFACELEFT

The palette is attached to the primary surface on the left. Changing the palette has an immediate effect on the display unless the DDPCAPS_VSYNC capability is specified and supported.

DDPCAPS_VSYNC

The palette can be modified synchronously with the monitor's refresh rate.

dwSVCaps

This value consists of one or more of the following flags that specify stereo-vision capabilities.

DDSVCAPS_RESERVED1, DDSVCAPS_RESERVED2, DDSVCAPS_RESERVED3, DDSVCAPS_RESERVED4

Reserved flags.

DDSVCAPS_STEREOSEQUENTIAL

New for DirectX 7.0. The driver can do stereo in at least one mode other than the current mode. The application can use IDirectDraw7::GetDisplayMode or IDirectDraw7::EnumDisplayModes to get per-mode stereo information.

dwAlphaBltConstBitDepths

DDBD_2, DDBD_4, or DDBD_8. (Indicate 2, 4, or 8 bits per pixel.)

dwAlphaBltPixelBitDepths

DDBD_1, DDBD_2, DDBD_4, or DDBD_8. (Indicate 1, 2, 4, or 8 bits per pixel.)

dwAlphaBltSurfaceBitDepths

DDBD_1, DDBD_2, DDBD_4, or DDBD_8. (Indicate 1, 2, 4, or 8 bits per pixel.)

dwAlphaOverlayConstBitDepths

DDBD_2, DDBD_4, or DDBD_8. (Indicate 2, 4, or 8 bits per pixel.)

dwAlphaOverlayPixelBitDepths

DDBD_1, DDBD_2, DDBD_4, or DDBD_8. (Indicate 1, 2, 4, or 8 bits per pixel.)

dwAlphaOverlaySurfaceBitDepths

DDBD_1, DDBD_2, DDBD_4, or DDBD_8. (Indicate 1, 2, 4, or 8 bits per pixel.)

dwZBufferBitDepths

DDBD_8, DDBD_16, DDBD_24, or DDBD_32. (Indicate 8, 16, 24, or 32 bits per pixel.) This member is obsolete for DirectX 6.0 and later. Use the IDirect3D7::EnumZBufferFormats to retrieve information about supported depth buffer formats.

dwVidMemTotal

Total amount of display memory on the device, in bytes, minus memory reserved for the primary surface and any private data structures reserved by the driver. (This value is the same as the total video memory reported by the IDirectDraw7::GetAvailableVidMem method.)

dwVidMemFree

Free display memory. This value equals the value in dwVidMemTotal, minus any memory currently allocated by the application for surfaces. Unlike the IDirectDraw7::GetAvailableVidMem method, which reports the memory available for a particular type of surface (such as a texture), this value reflects the memory available for any type of surface.

dwMaxVisibleOverlays

Maximum number of visible overlays or overlay sprites.

dwCurrVisibleOverlays

Current number of visible overlays or overlay sprites.

dwNumFourCCCodes

Number of FourCC codes.

dwAlignBoundarySrc

Source-rectangle alignment for an overlay surface, in pixels.

dwAlignSizeSrc

Source-rectangle size alignment for an overlay surface, in pixels. Overlay source rectangles must have a pixel width that is a multiple of this value.

dwAlignBoundaryDest

Destination-rectangle alignment for an overlay surface, in pixels.

dwAlignSizeDest

Destination-rectangle size alignment for an overlay surface, in pixels. Overlay destination rectangles must have a pixel width that is a multiple of this value.

dwAlignStrideAlign

Stride alignment.

dwRops[DD_ROP_SPACE]

Raster operations supported.

ddsCaps

A DDSCAPS2 structure that contains general surface capabilities.

dwMinOverlayStretch

Minimum overlay stretch factor, multiplied by 1000. For example, 1.3 = 1300.

dwMaxOverlayStretch

Maximum overlay stretch factor, multiplied by 1000. For example, 1.3 = 1300.

dwMinLiveVideoStretch

Obsolete; do not use.

dwMaxLiveVideoStretch

Obsolete; do not use.

dwMinHwCodecStretch

Obsolete; do not use.

dwMaxHwCodecStretch

Obsolete; do not use.

dwReserved1

Reserved

dwReserved2

Reserved

dwReserved3

Reserved

dwSVBCaps

Driver-specific capabilities for bitblts from system memory to display memory. Valid flags are identical to the bitblt-related flags that are used with the dwCaps member.

dwSVBCKeyCaps

Driver color-key capabilities for bitblts from system memory to display memory. Valid flags are identical to the bitblt-related flags that are used with the dwCKeyCaps member.

dwSVBFXCaps

Driver FX capabilities for bitblts from system memory to display memory. Valid flags are identical to the bitblt-related flags that are used with the dwFXCaps member.

dwSVBRops[DD_ROP_SPACE]

Raster operations supported for bitblts from system memory to display memory.

dwVSBCaps

Driver-specific capabilities for bitblts from display memory to system memory. Valid flags are identical to the bitblt-related flags that are used with the dwCaps member.

dwVSBCKeyCaps

Driver color-key capabilities for bitblts from display memory to system memory. Valid flags are identical to the bitblt-related flags that are used with the dwCKeyCaps member.

dwVSBFXCaps

Driver FX capabilities for bitblts from display memory to system memory. Valid flags are identical to the bitblt-related flags used with the dwFXCaps member.

dwVSBRops[DD_ROP_SPACE]

Raster operations supported for bitblts from display memory to system memory.

dwSSBCaps

Driver-specific capabilities for bitblts from system memory to system memory. Valid flags are identical to the bitblt-related flags used with the dwCaps member.

dwSSBCKeyCaps

Driver color-key capabilities for bitblts from system memory to system memory. Valid flags are identical to the bitblt-related flags used with the dwCKeyCaps member.

dwSSBFXCaps

Driver FX capabilities for bitblts from system memory to system memory. Valid flags are identical to the bitblt-related flags used with the dwFXCaps member.

dwSSBRops[DD_ROP_SPACE]

Raster operations supported for bitblts from system memory to system memory.

dwReserved4

Reserved

dwReserved5

Reserved

dwReserved6

Reserved

Remarks

For backward compatibility, the Ddraw.h header file contains multiple definitions of the DDCAPS structure. The version that passes the preprocessor is determined by the value of the DIRECTDRAW_VERSION constant.

Requirements

Requirement Value
Header ddraw.h