DDSURFACEDESC2結構 (ddraw.h)
DDSURFACEDESC2 結構包含驅動程式所要建立的介面描述。
語法
typedef struct _DDSURFACEDESC2 {
DWORD dwSize;
DWORD dwFlags;
DWORD dwHeight;
DWORD dwWidth;
#if ...
union {
LONG lPitch;
DWORD dwLinearSize;
} DUMMYUNIONNAMEN;
#elif
union {
DWORD dwBackBufferCount;
DWORD dwDepth;
} DUMMYUNIONNAMEN;
#elif
union {
DWORD dwMipMapCount;
DWORD dwRefreshRate;
DWORD dwSrcVBHandle;
} DUMMYUNIONNAMEN;
DWORD dwAlphaBitDepth;
DWORD dwReserved;
LPVOID lpSurface;
#elif
union {
DDCOLORKEY ddckCKDestOverlay;
DWORD dwEmptyFaceColor;
} DUMMYUNIONNAMEN;
DDCOLORKEY ddckCKDestBlt;
DDCOLORKEY ddckCKSrcOverlay;
DDCOLORKEY ddckCKSrcBlt;
#else
union {
DDPIXELFORMAT ddpfPixelFormat;
DWORD dwFVF;
} DUMMYUNIONNAMEN;
#endif
DDSCAPS2 ddsCaps;
DWORD dwTextureStage;
} *LPDDSURFACEDESC2, DDSURFACEDESC2;
成員
dwSize
指定這個 DDSURFACEDESC2 結構的位元組大小。 使用 結構之前,必須先初始化這個成員。
dwFlags
指定一組旗標,決定DDSURFACEDESC2結構的成員包含有效的數據。 此成員可以是下列一或多個旗標:
旗標 | 意義 |
---|---|
DDSD_ALL |
所有輸入成員都包含有效的數據。 |
DDSD_ALPHABITDEPTH |
dwAlphaBitDepth 成員有效。 |
DDSD_BACKBUFFERCOUNT |
dwBackBufferCount 成員有效。 |
DDSD_CAPS |
ddsCaps 成員有效。 |
DDSD_CKDESTBLT |
ddckCKDestBlt 成員有效。 |
DDSD_CKDESTOVERLAY |
ddckCKDestOverlay 成員有效。 |
DDSD_CKSRCBLT |
ddckCKSrcBlt 成員有效。 |
DDSD_CKSRCOVERLAY |
ddckCKSrcOverlay 成員有效。 |
DDSD_FVF |
dwFVF 成員有效。 |
DDSD_HEIGHT |
dwHeight 成員有效。 |
DDSD_LINEARSIZE |
dwLinearSize 成員有效。 |
DDSD_LPSURFACE |
lpSurface 成員有效。 |
DDSD_MIPMAPCOUNT |
dwMipMapCount 成員有效。 |
DDSD_PITCH |
lPitch 成員有效。 |
DDSD_PIXELFORMAT |
ddpfPixelFormat 成員有效。 |
DDSD_REFRESHRATE |
dwRefreshRate 成員有效。 |
DDSD_SRCVBHANDLE |
dwSrcVBHandle 成員有效。 |
DDSD_TEXTURESTAGE |
dwTextureStage 成員有效。 |
DDSD_WIDTH |
dwWidth 成員有效。 |
DDSD_ZBUFFERBITDEPTH |
此旗標不會用於DDSURFACEDESC2。 它只適用於 DDSURFACEDESC。 |
dwHeight
以像素指定表面的高度。
dwWidth
以像素指定表面的寬度。
DUMMYUNIONNAMEN
N/A
DUMMYUNIONNAMEN.lPitch
指定兩個相鄰掃描行開頭之間的位元元組數目;也就是說,要加入至一個掃描行開頭位址的位元組數目,以到達其下方下一個掃描行的起始位址。 驅動程式的 DdCreateSurface 回呼必須傳回此值。
DUMMYUNIONNAMEN.dwLinearSize
指定無格式、延遲配置、優化表面的大小,以位元組為單位。
DUMMYUNIONNAMEN.dwBackBufferCount
指定與表面相關聯的後台緩衝區數目。
DUMMYUNIONNAMEN.dwDepth
如果這是磁碟區紋理,則為位深度。
DUMMYUNIONNAMEN.dwMipMapCount
指定 Mipmap 層級的數目。
DUMMYUNIONNAMEN.dwRefreshRate
指定顯示模式描述) 時,監視器 (的重新整理速率。
DUMMYUNIONNAMEN.dwSrcVBHandle
指定 Microsoft Direct3D SDK 檔) 中所述的 IDirect3DVertexBuffer7::Optimize (中使用的來源。
dwAlphaBitDepth
以每個圖元的位為單位指定 Alpha 緩衝區的深度。
dwReserved
保留 ,且 應設定為零。
lpSurface
指定相關聯表面記憶體的位址。
DUMMYUNIONNAMEN.ddckCKDestOverlay
指定目的地重疊使用的色彩索引鍵。
DUMMYUNIONNAMEN.dwEmptyFaceColor
指定空白 Cube 地圖臉部的實體色彩。
ddckCKDestBlt
指定目的地blit用途的色彩索引鍵。
ddckCKSrcOverlay
指定來源重疊使用的色彩索引鍵。
ddckCKSrcBlt
指定來源blit用途的色彩索引鍵。
DUMMYUNIONNAMEN.ddpfPixelFormat
指定描述表面圖元格式的 DDPIXELFORMAT 結構。
DUMMYUNIONNAMEN.dwFVF
指定頂點緩衝區的彈性頂點格式 (D3DFVF) 。
ddsCaps
指定包含 DirectDraw 表面功能的 DDSCAPS 結構。
dwTextureStage
指定多重文字串聯中的階段。 如需詳細資訊,請參閱 紋理階段。
備註
每個潛在表面類型的相關成員都不同。 此結構通常是由應用程式建立和初始化。
規格需求
需求 | 值 |
---|---|
標頭 | ddraw.h |