×

DirectDraw 7.0 SDK For VisualBasic程序员指南

Kalet Kalet 发表于2009-03-20 12:00:14 浏览412 评论0

抢沙发发表评论

名词解释
device context (DC) 设备描述表
device-independent bitmap (DIB) 设备无关位图DirectDraw 7.0 SDK For VisualBasic程序员指南
bit block transfer(blit) 位块传送
back buffer 在主绘图面表面显示当前可看见的图象时,一个可以绘制位图或其它图像的不可见绘图面
Architectural 构架
Hardware abstraction layer 硬件抽像层
Globally unique identifiers(GUIDS) 全球唯一标识
destination color key 在目标绘图面被替换(在BLIT时)和被覆盖(在覆盖操作时)的颜色
source color key 在目标绘图面上不被拷贝(在BLIT时)或不可见(在覆盖操作时)的颜色
tearing 当屏幕刷新率超出与一个应用程序的帧速率的同步,一可视的人为导致的畸变,一帧的顶部显示同一时间另一帧的底部,伴随着一个可分辨的撕裂在两帧之间
mipmap 也叫做MIP map,(拉丁语multium in parvo,译为很小规模的),一个序列的纹理,每个图片的分辨率越来越低,是同一图像的预先处理的结果。当可见对像接近于观看者,使用一个高分辨率的图像,同样,当可见对像被移远,低分辨率图像被使用。
IRE 标度,国际电工标度,一个0到100之间的标度范围,定义了广播视频信号的亮度级别。从低到高的IRE光谱表示视频信号渐增的亮度级。在7.5 IRE亮度――黑色截止开端用于National Television System Committee (NTSC)信号,一个NTSC显示设备截止并不显示图像的信号。
dirty rectangle 脏矩形技术如果灵活使用将比Double buffer 更快. 它指的是每次只恢复上帧屏幕上被破坏了的矩形部分.

关于 DirectDraw
DirectDraw 是 DirectX 应用程序编程接口(API)的一个部件.它使得你可以直接地对显存操作,硬件位块传送(hardware blitter).支持硬件覆盖及换页技术(flipping surface). DirectDraw 提供这些功能的同时保证了对现有基于 Microsoft Windows 的应用程序及设备驱动程序的兼容.
DirectDraw 为你提供了一个直接访问显示设备的软件接口,并同时保证了与 Windows 图形设备接口(GDI)的兼容. DirectDraw 并不是一种高级的图形程序编程接口(API).它为游戏和 Windows 子系统软件,例如 3D 图形包和数字视频编码(codecs),提供了一种设备无关的途径,以获得访问特定的显示设备的某些高级特性的能力。
DirectDraw 可以使用于多种的显示设备.从简单的 SVGA 显示器到提供裁剪,缩放(stretching),和支持非 RGB 颜色格式的高级硬件实现设备.设计这样的接口是为了让你的应用程序能够列举低层硬件的能力,并且对那些支持的硬件加速特性加以利用.那些在硬件设备中不能实现的特性, DirectX 将仿真出来.
DirectDraw 提供了对显存的设备相关访问的设备无关途径.本质上,由 DirectDraw 管理显存.你的应用程序只需要懂得那些一般的关于硬件与设备的知识,比如 RGB 和 YUV 色彩格式和两条光栅线之间的节距(pitch).在需要利用位转换或操作调色板寄存器时,你不需要为调用过程中的细节而烦恼.使用 DirectDraw, 你可以方便的操作显存,充分的利用不同类型的显示设备的位转换和颜色压缩能力,而不需要依赖于某一种特定的硬件.
DirectDraw 给运行于 Windows 95 和 Windows NT 4.0 或windows 2000或更高版本的计算机提供了一个高性能的的游戏图象引擎.

Types
DDBLTFX

DDBLTFX 类型传递DirectDrawSurface7.Blt方法的光栅操作、效果和覆盖信息Type DDBLTFX

Type DDBLTFX
ddckDestColorKey_high As Long 用于目标色键的色彩范围上限
ddckDestColorKey_low As Long 用于目标色键的色彩范围下限
ddckSrcColorKey_high As Long 用于源色键的色彩范围上限
ddckSrcColorKey_low As Long 用于源色键的色彩范围下限
lAlphaDestConst As Long 用做目标ALPHA通道的常量
lAlphaDestConstBitDepth As Long 目标ALPHA常数的位深
lAlphaEdgeBlend As Long 用于边缘混合的ALPHA常量
lAlphaEdgeBlendBitDepth As Long 边缘混合的ALPHA常量位深
lAlphaSrcConst As Long ALPHA通道源常量
lAlphaSrcConstBitDepth As Long ALPHA源常量位深
lDDFX As CONST_DDBLTFXFLAGS 特效操作的类型,是CONST_DDBLTFXFLAGS枚举常量之一
lDDROP As Long DirectDraw光栅操作
lFill As Long 当DDBLT_COLORFILL指定时,用彩色填充绘图面,此值必须是一像素值,必须合乎目标绘图面的像素格式,对一个调色板绘图层,它必须是一个调色索引,对一个16位RGB绘图面,它必须是一个16位像素值
lReserved As Long 为将来保留
lROP As Long Win32光栅操作,你可以通过调用DirectDraw7.GetCaps方法,得到所支持的光栅操作列表
lRotationAngle As Long 为BLIT旋转角度
lZBufferBaseDest As Long 目标z缓冲的基数值
lZBufferHigh As Long z缓冲的上限
lZBufferLow As Long z缓冲的下限
lZBufferOpCode As Long z缓冲比较
lZDestConst As Long 用于z缓冲目标的常量
lZDestConstBitDepth As Long 目标z常量的位深
lZSrcConst As Long 用于z缓冲源的常量
lZSrcConstBitDepth As Long 用于z缓冲源的常量
End Type

DDCAPS

DDCAPS 描述了硬件的DirectDraw能力,此类型包括一个DDSCAPS2类型在此环境中用于描述可以建立何种类型的 DirectDrawSurface 对象。它也许不可能由这些能力同时创造所有表面。此类型用于DirectDraw7.GetCaps方法

Type DDCAPS
ddsCaps As DDSCAPS2 DDSCAPS2 类型用于更多的能力描述
lAlignBoundaryDest As Long 用于覆盖绘图面的目标矩形队列,用像素表示
lAlignBoundarySrc As Long 用于覆盖绘图面的源矩形队列,用像素表示
lAlignSizeDest As Long 用于覆盖绘图面的目标矩形尺寸队列,用像素表示,覆盖目标矩形必须具有这一值倍数的像素宽度
lAlignSizeSrc As Long 用于覆盖绘图面的源矩形尺寸队列,用像素表示,覆盖源矩形必须具有这一值倍数的像素宽度
lAlignStrideAlign As Long 节距队列
lAlphaBltConstBitDepths As Long DDBD_2, DDBD_4, 或 DDBD_8. (表明每像素.2、4、8位)
lAlphaBltPixelBitDepths As Long DDBD_1, DDBD_2, DDBD_4, or DDBD_8.(表明每像素1、2、4或8位)
lAlphaBltSurfaceBitDepths As Long DDBD_1, DDBD_2, DDBD_4, or DDBD_8.(表明每像素1、2、4或8位)
lAlphaOverlayConstBitDepths As Long DDBD_2, DDBD_4, 或 DDBD_8. (表明每像素.2、4、8位)
lAlphaOverlayPixelBitDepths As Long DDBD_1, DDBD_2, DDBD_4, or DDBD_8.(表明每像素1、2、4或8位)
lAlphaOverlaySurfaceBitDepths As Long DDBD_1, DDBD_2, DDBD_4, or DDBD_8.(表明每像素1、2、4或8位)
lCaps As CONST_DDCAPS1FLAGS CONST_DDCAPS1FLAGS枚举常量,描述特殊驱动能力
lCaps2 As CONST_DDCAPS2FLAGS CONST_DDCAPS1FLAGS枚举常量,描述更多的特殊驱动能力
lCKeyCaps As CONST_DDCKEYCAPSFLAGS CONST_DDCKEYCAPSFLAGS枚举常量,描述色键能力
lCurrVideoPorts As Long 当前实况视频端口数
lCurrVisibleOverlays As Long 当前可见覆盖层或覆盖精灵数
lFXCaps As CONST_DDFXCAPSFLAGS CONST_DDFXCAPSFLAGS枚举常量,描述驱动特殊拉伸及效果能力
lMaxHwCodecStretch As Long 废弃
lMaxLiveVideoStretch As Long 废弃
lMaxOverlayStretch As Long 最大覆盖拉伸因子,1000的倍数,例:1.3=1300
lMaxVideoPorts As Long 实多实况视频端口数
lMaxVisibleOverlays As Long 最多可见覆盖层或覆盖精灵数
lMinHwCodecStretch As Long 废弃
lMinLiveVideoStretch As Long 废弃
lMinOverlayStretch As Long 最小覆盖拉伸因子,1000的倍数,例:1.3=1300
lNLVBCaps As CONST_DDCAPS1FLAGS CONST_DDCAPS1FLAGS枚举常量,用于描述从非本地到本地显存BLIT的能力,有效标志等同于使用lCaps成员的BLIT相关标志
lNLVBCaps2 As CONST_DDCAPS2FLAGS CONST_DDCAPS2FLAGS枚举常量,用于描述从非本地到本地显存BLIT的能力,有效标志等同于使用lCap2成员的BLIT相关标志
lNLVBCKeyCaps As CONST_DDCKEYCAPSFLAGS CONST_DDCKEYCAPSFLAGS枚举常量,用于描述从非本地到本地显存色键的能力,有效标志等同于使用lCKeyCaps
成员的BLIT相关标志
lNLVBFXCaps As CONST_DDFXCAPSFLAGS CONST_DDFXCAPSFLAGS枚举常量,用于描述从非本地到本地显存特效的能力,有效标志等同于使用lFXCaps
成员的BLIT相关标志
lNLVBRops (0 To 7) As Long
lNumFourCCCodes As Long FourCC码的数量
lPalCaps As CONST_DDPCAPSFLAGS CONST_DDPCAPSFLAGS描述调色板能力
lReserved1 As Long 为将来用途保留
lReserved2 As Long 为将来用途保留
lReserved3 As Long 为将来用途保留
lReservedCaps As Long 为将来用途保留
lRops (0 To 7) As Long 支持从非本地显存到本地显存BLIT的光栅操作
lSSBCaps As CONST_DDCAPS1FLAGS CONST_DDCAPS1FLAGS枚举常量,用于描述从系统内存到系统内统的BLIT能力,有效标志等同于使用lCaps成员的BLIT相关标志
lSSBCKeyCaps As CONST_DDCKEYCAPSFLAGS CONST_DDCKEYCAPSFLAGS枚举常量,用于描述从系统内存到系统内统的色键能力,有效标志等同于使用lCKeyCaps成员的BLIT相关标志
lSSBFXCaps As CONST_DDFXCAPSFLAGS CONST_DDCKEYCAPSFLAGS枚举常量,用于描述从系统内存到系统内统的特效能力,有效标志等同于使用lFXCaps成员的BLIT相关标志
lSSBRops (0 To 7) As Long 支持从系统内存到系统内存BLIT的光栅操作
lSVBCaps As CONST_DDCAPS1FLAGS CONST_DDCAPS1FLAGS枚举常量,用于描述从系统内存到显存的BLIT能力,有效标志等同于使用lCaps成员的BLIT相关标志
lSVBCaps2 As CONST_DDCAPS2FLAGS CONST_DDCAPS2FLAGS枚举常量,用于描述更多的从系统内存到显存的BLIT能力,有效标志等同于使用lCaps2成员的BLIT相关标志
lSVBCKeyCaps As CONST_DDCKEYCAPSFLAGS CONST_DDCKEYCAPSFLAGS枚举常量,用于描述从系统内存到显存的色键能力,有效标志等同于使用lCKeyCaps成员的BLIT相关标志
lSVBFXCaps As CONST_DDFXCAPSFLAGS CONST_DDFXCAPSFLAGS枚举常量,用于描述从系统内存到显存的特效能力,有效标志等同于使用lFXCaps成员的BLIT相关标志
lSVBRops (0 To 7) As Long 支持从系统内存到显存BLIT的光栅操作
lSVCaps As CONST_DDSTEREOCAPSFLAGS CONST_DDSTEREOCAPSFLAGS枚举常量,描述立体视觉能力
lVidMemFree As Long 显存的空闲数
lVidMemTotal As Long 显存大小
lVSBCaps As CONST_DDCAPS1FLAGS CONST_DDCAPS1FLAGS枚举常量,用于描述从显存到系统内存的BLIT能力,有效标志等同于使用lCaps成员的BLIT相关标志
lVSBCKeyCaps As CONST_DDCKEYCAPSFLAGS CONST_DDCKEYCAPSFLAGS枚举常量,用于描述从显存到系统内存的色键能力,有效标志等同于使用lCKeyCaps成员的BLIT相关标志
lVSBFXCaps As CONST_DDFXCAPSFLAGS CONST_DDFXCAPSFLAGS枚举常量,用于描述从显存到系统内存的特效能力,有效标志等同于使用lFXCaps成员的BLIT相关标志
lVSRops (0 To 7) As Long 支持从显存到系统内存BLIT的光栅操作
lZBufferBitDepths As Long DDBD_8, DDBD_16, or DDBD_24. (表明每像素8、16或24位),32位z缓冲不支持
End Type
DDCOLORCONTROL
The DDCOLORCONTROL 类型定义关联到 DirectDrawVideoPortObject 或一个主绘图面的色彩控制。

Type DDCOLORCONTROL
lBrightness As Long 亮度,IRE单位乘以100,取值范围在0到10000,缺省值是750,换算为7.5 IRE
lColorEnable As Long 标志是否使用彩色,如果为0,不使用,如果为1,使用彩色。缺省值是1
lContrast As Long 对比度,在较亮值和较暗值之间的相对差,IRE单位乘以100,可用范围是0到20000,缺省值是10000(100 IRE),对比度的较高值,导致较暗的亮度值趋向于黑色,较亮的亮度值趋向于白色,较低的对比度导致所有的亮度趋向范围的中间。
lFlags As CONST_DDCOLORFLAGS CONST_DDCOLORFLAGS枚举常量,指出哪一成员包括可用数据,当此类型通过DirectDrawColorControl.GetColorControls方法返回,它也给出哪些选项是硬件所支持的。
lGamma As Long 控制gamma校正值用于亮度值,可用范围从1到500 gamma单位,缺省是1
lHue As Long 色度构成的相位关系,用度数指定,取值范围从-180到180,缺省是0
lReserved1 As Long 保留
lSaturation As Long 色彩强度,IRE单位乘以100,可用范围0到20000,缺省值是10000,换算为100 IRE
lSharpness As Long 锐度,任意单位,有效范围0到10,缺省值是5
End Type

DDCOLORKEY

DDCOLORKEY 类型描述一个源色键,目的色键,或色彩空间。 如果high和low的值相同,则指定一个色键. 此类型用于DirectDrawSurface7.GetColorKey 和DirectDrawSurface7.SetColorKey方法

Type COLORKEY
high As Long 用于色键的色彩范围的高值
low As Long 用于色键的色彩范围的低值
End Type

DDGAMMARAMP

DDGAMMARAMP类型包括红、绿、蓝斜率数据用于 DirectDrawGammaControl.GetGammaRamp 和DirectDrawGammaControl.SetGammaRamp 方法

Type DDGAMMARAMP
blue(0 To 255) As Integer 蓝色GAMMA斜率
green(0 To 255) As Integer 绿色GAMMA斜率
red(0 To 255) As Integer 红色GAMMA斜率
End Type

DDOVERLAYFX

DDOVERLAYFX 类型传递重叠信息到 DirectDrawSurface7.UpdateOverlay 方法

type DDOVERLAYFX
dckDestColorkey As DDCOLORKEY 目的绘图面色键叠加
dckSrcColorkey As DDCOLORKEY 源绘图面色键叠加
lAlphaDestConst As Long 做为目的绘图面ALPHA通道的常数
lAlphaDestConstBitDepth As Long 用于指定目的绘图面ALPHA常数的位深
lAlphaEdgeBlend As Long 用作边缘混和的ALPHA常数
lAlphaEdgeBlendBitDepth As Long 用于指定ALPHA边缘混和的常数的位深
lAlphaSrcConst As Long 做为源绘图面ALPHA通道的常数
lAlphaSrcConstBitDepth As Long 用于指定源绘图面ALPHA常数的位深
lDDFX As CONST_DDOVERFXFLAGS CONST_DDOVERFXFLAGS枚举之一的常量
lFlags As Long 当前未使用,必须设为0
End Type


DDPIXELFORMAT

DDPIXELFORMAT类型搭描述DirectDrawSurface对象的像素格式, 用于DirectDrawSurface7.GetPixelFormat 方法

Type DDPIXELFORMAT
lAlphaBitDepth As Long Alpha通道位深(1、2、4或8)用于一个纯ALPHA绘图面(DDPF_ALPHA)。对于包含具有色彩数据的隔行ALPHA信息像素格式(DDPF_ALPHAPIXELS), 你必须统计lRGBAlphaBitMask 成员的位数得到ALPHA混合的位深
lBBitMask As Long 蓝色位的掩码
lBumpBitCount As Long 在一个bump-map绘图面,每像素bump-map比特
lBumpDuBitMask As Long bump-map的U-delta比特掩码
lBumpDvBitMask As Long bump-map的V-delta比特掩码
lBumpLuminanceBitMask As Long 在bump-map像素中亮度掩码
lFlags As CONST_DDPIXELFORMATFLAGS CONST_DDPIXELFORMATFLAGS枚举的常数,描述可选控制标志
lFourCC As Long FourCC码,更多信息,参阅Four-Character Codes (FOURCC
lGBitMask As Long 绿色位的掩码
lLuminanceAlphaBitMask As Long 用于ALPHA通道掩码
lLuminanceBitCount As Long 每像素亮度总计,此成员仅用于luminance-only 和luminance-alpha绘图面
lLuminanceBitMask As Long 亮度位掩码
lRBitMask As Long 红色位的掩码
lRGBAlphaBitMask As Long 用于ALPHA通道掩码
lRGBBitCount As Long 每像素RGB位数(4, 8, 16, 24, or 32).(色深)
lRGBZBitMask As Long Z通道掩码
lStencilBitDepth As Long 模版(Stencil)缓冲的位深。此成员指定多少位被保留在每个Z缓冲的像素中用于模版信息。(z-bits的总数等于 lZBufferBitDepth 减去 lStencilBitDepth)
lStencilBitMask As Long 在每个Z缓冲像素中的模版位掩码
lUBitMask As Long U位掩码
lVBitMask As Long V位掩码
lYBitMask As Long Y位掩码
lYUVAlphaBitMask As Long 用于ALPHA通道掩码
lYUVBitCount As Long 每像素YUV位 (4, 8, 16, 24, or 32)
lYUVZBitMask As Long Z通道掩码
lZBitMask As Long Z位掩码
lZBufferBitDepth As Long Z缓冲位深(8, 16, or 24),32位Z缓冲不支持
End Type

DDSCAPS2
DDSCAPS2 类型定义了DirectDrawSurface对象的能力,是DDSURFACEDESC2的一部分
Type DDSCAPS2
lCaps As CONST_DDSURFACECAPSFLAGS 一个或多个枚举CONST_DDSURFACECAPSFLAGS常数表现绘图面的能力
lCaps2 As CONST_DDSURFACECAPS2FLAGS 额外的绘图面能力,此成员可包括一个或多个枚举CONST_DDSURFACECAPS2FLAGS常数,并可能包含一个额外标志显示出分配了多少绘图面内存
lCaps3 As Long 当前未使用
lCaps4 As Long 当前未使用
End Type

DDSURFACEDESC2

DDSURFACEDESC2类型包括了绘图面的描述。 此类型传递到DirectDraw7.CreateSurface 方法。对每个可能的绘图面,相关的成员不一致。

Type DDSURFACEDESC2
ddckCKDestBlt As DDCOLORKEY DDCOLORKEY类型,用于描述BLIT操作的目的色键
ddckCKDestOverlay As DDCOLORKEY DDCOLORKEY类型,用于描述覆盖绘图面的目的色键
ddckCKSrcBlt As DDCOLORKEY DDCOLORKEY类型,用于描述BLIT操作时的源色键
ddckCKSrcOverlay As DDCOLORKEY DDCOLORKEY类型,用于描述覆盖绘图面的目的色键
ddpfPixelFormat As DDPIXELFORMAT DDPIXELFORMAT类型,用于描述绘图面的像素格式
ddsCaps As DDSCAPS2 DDSCAPS2类型,包含了绘图面的性能
lAlphaBitDepth As Long Alpha的深度
lBackBufferCount As Long 后缓冲的数目
lFlags As CONST_DDSURFACEDESCFLAGS 可选控制标志,一个或更多个CONST_DDSURFACEDESCFLAGS枚举常量
lHeight As Long 建立的绘图面高度,用象素表示
lLinearSize As Long 当前不用
lMipMapCount As Long Mipmap的级别数
lPitch As Long 起始线到下一线用字节表示的距离。当使用DirectDrawSurface7.GetSurfaceDesc方法时,这是一个返回值,当从已存在内存建立绘图面时,这必须是个倍数的输入值
l***Rate As Long 刷新速度(当使用显示模式描述),为0时则指适配器的缺省值。
lTextureStage As Long 段标识符用于在一个3D驱动的多层纹理图中绑定一个纹理到特定段,虽然不是所有硬件都需要,但在很大变化的3D加速中为了提高性能,建议设置此成员,硬件需要明确分配纹理来显露由Direct3DDevice7.GetCaps 方法填充的D3DDEVICEDESC结构中的D3DDEVCAPS_SEPARATETEXTUREMEMORIES 3D设备性能。
lWidth As Long 建立的绘图面宽度,用象素表示
lZBufferBitDepth As Long z缓冲深度,32位z缓冲不支持
End Type
注意:
当调用DirectDrawSurface7.GetSurfaceDesc方法时,ipitch成员是一个输出值。当从现存内存中建立绘图面时或更新绘图面特征时,这些成员是描述pitch和本地内存,应用分配供DirectDraw使用的输入值。DirectDraw不做尝试通过应用程序管理或释放内存。更多信息,请看Creating Client Memory Surfaces and Updating Surface Characteristics.

PALETTEENTRY

The PALETTEENTRY 类型指定色彩和一个逻辑调色板.

Type PALETTEENTRY
blue As Byte 指定一个用于调色板的蓝色亮度值
flags As Byte 指定调色板如何使用,flags成员必须被指定为Nothing或下列值之一
PC_EXPLICIT 逻辑调色板词条的低序字,指定一个硬件调色板索引,此标志允许应用程序显示显示设备调色板的内容。
PC_NOCOLLAPSE 色彩将被放置在系统调色板的未使用条目,而不是被适配到一个已存在于系统调色板中的颜色。如果系统调色板没有未用条目,此色彩正常适配。一旦此色彩在系统调色板中,在其它逻辑调色板中的色彩必须被适配到这一色彩。
PC_RESERVED 逻辑调色板被用于调色板动画。此标志防止其它窗口由于匹配色彩到调色板导致色彩频繁改变。如果一个未使用系统调色板条目可用,色彩将被放置在此条目,否则,色彩不可用于动画。

green As Byte 指定一个用于调色板的绿色亮度值
red As Byte 指定一个用于调色板的红色亮度值
End Type


RECT

The RECT 类型定义矩形的左上角和右下角座标

Type RECT
Bottom As Long 矩形右下角的Y坐标
Left As Long 矩形左上角的X坐标
Right As Long 矩形右下角的X坐标
Top As Long 矩形右上角的Y坐标
End Type


Enumerations

CONST_DDBITDEPTHFLAGS

CONST_DDBITDEPTHFLAGS枚举用于指定位深

Enum CONST_DDBITDEPTHFLAGS
DDBD_1 = 16384
DDBD_16 = 1024
DDBD_2 = 8192
DDBD_24 = 512
DDBD_32 = 256
DDBD_4 = 4096
DDBD_8 = 2048
End Enum

DDBD_1 to 32 每像素位数.

CONST_DDBLTFASTFLAGS
CONST_DDBLTFASTFLAGS用于传送DirectDrawSurface7.Bltfast方法的参数以确定传送类型。
Enum CONST_DDBLTFASTFLAGS
DDBLTFAST_DESTCOLORKEY = 2 透明BLIT使用的目的色键
DDBLTFAST_DONOTWAIT = 32 如果位块传送器(BLITTER)忙不等待
DDBLTFAST_NOCOLORKEY = 0 正常拷贝传送,无透明
DDBLTFAST_SRCCOLORKEY = 1 使用源色键,透明BLIT
DDBLTFAST_WAIT = 16 如果块传送器忙,推迟DDERR_WASSTILLDRAWING信息,一旦BLIT可以启用或其它错误发生就返回
End Enum


CONST_DDBLTFLAGS

The CONST_DDBLTFLAGS 用于 DirectDrawSurface7.Blt 和DirectDrawSurface7.BltFx 方法的标志参数以决定关联 DDBLTFX 类型的有效成员。DDBLTFX类型指定色键信息或从方法请求特殊行为。

Enum CONST_DDBLTFLAGS
DDBLT_ASYNC = 512 使用FIFO(先进先出)硬件执行异步BLIT,如果无FIFO硬件空间可用,调用失败
DDBLT_COLORFILL = 1024 使用DDBLTFX的成员IFILL作为RGB色填充目标
DDBLT_DDFX = 2048 使用DDBLTFX的成员IDDFX指定位块传送的效果
DDBLT_DDROPS = 4096 使用DDBLTFX的成员IROP指定不是win32 API部分的光栅操作
DDBLT_DEPTHFILL = 33554432 使用DDBLTFX的成员Ifill作为填充目的Z缓冲表面的目的矩形的深度值
DDBLT_DONOTWAIT = 134217728 如果位块传送器忙,不等待可用而是不进行位块传送返回
DDBLT_KEYDEST = 8192 用色键关联目标绘图面
DDBLT_KEYDESTOVERRIDE = 16384 使用DDBLTFX的ddckDestColorKey_high 和ddckDestColorKey_low成员作为目标绘图面的色键
DDBLT_KEYSRC = 32768 用色键关联源绘图面
DDBLT_KEYSRCOVERRIDE = 65536 使用DDBLTFX的ddckSrcColorKey_high 和 ddckSrcColorKey_low成员作为源绘图面的色键
DDBLT_ROP = 131072 使用DDBLTFX的IROP成员作为块传送光栅操作,这些光栅操作与win32 API中的一致
DDBLT_ROTATIONANGLE = 262144 使用DDBLTFX的lRotationAngle成员作为绘图面的旋转角度(1/100度)
DDBLT_WAIT = 16777216 如果块转送器忙,推迟WASSTILLDRAWING返回值,当块传送器一旦可用或其它错误发生就返回
End Enum
CONST_DDBLTFXFLAGS

CONST_DDBLTFXFLAGS用于DDBLTFX 类型的lDDFX成员指定 FX操作.

Enum CONST_DDBLTFXFLAGS
DDBLTFX_ARITHSTRETCHY = 1 为块传送使用沿Y轴的算术拉伸
DDBLTFX_MIRRORLEFTRIGHT = 2 沿Y轴旋转绘图面,左右镜向
DDBLTFX_MIRRORUPDOWN = 4 沿X轴旋转绘图面,上下镜向
DDBLTFX_NOTEARING = 8 计划块传送避免撕裂(tearing)
DDBLTFX_ROTATE180 = 16 顺时针旋转180度
DDBLTFX_ROTATE270 = 32 顺时针旋转270度
DDBLTFX_ROTATE90 = 64 顺时针旋转90度
DDBLTFX_ZBUFFERBASEDEST = 256 在z-blit期间与目标z-value比较之前,增加DDBLITFX类型的lZBufferBaseDest成员给每个z-values
DDBLTFX_ZBUFFERRANGE = 128 使用DDBLTFX的成员lZBufferLow 和 lZBufferHigh,作为范围值,限制在z-blit期间从源绘图面的块传送拷贝
End Enum

CONST_DDCAPS1FLAGS

被DDCAPS类型的lCaps, lNLVBCaps, lSSBCaps, lSVBCaps, lVSBCaps成员用于描述硬件能力

Enum CONST_DDCAPS1FLAGS
DDCAPS_3D = 1 显示硬件具有三维加速
DDCAPS_ALIGNBOUNDARYDEST = 2 DirectDraw仅支持沿x轴排列到lAlignBoundarySrc分界的覆盖目标矩形
DDCAPS_ALIGNBOUNDARYSRC = 8 DirectDraw仅支持沿x轴排列到lAlignBoundarySrc分界的覆盖源矩形
DDCAPS_ALIGNSIZEDEST = 4 DirectDraw仅支持x轴大小的像素数是lAlignSizeDest的倍数的覆盖目标矩形
DDCAPS_ALIGNSIZESRC = 16 DirectDraw仅支持x轴大小的像素数是lAlignSizeSrc的倍数的覆盖源矩形
DDCAPS_ALIGNSTRIDE = 32 DirectDraw建立一个节距(lPitch)队列等于lAlignStrideAlign值的显示内存绘图面
DDCAPS_ALPHA = 8388608 显示硬件支持只有Alpha通道绘图面
DDCAPS_BANKSWITCHED = 134217728 显示系统硬件随机存取显示内存是bank-switched并且执行效能非常慢
DDCAPS_BLT = 64 显示硬件有BLIT操作的能力
DDCAPS_BLTCOLORFILL = 67108864 显示硬件有用块传送器进行彩色填充的能力
DDCAPS_BLTDEPTHFILL = 268435456 显示硬件有用块传送器进行z-buffer深度填充的能力
DDCAPS_BLTFOURCC = 256 显示硬件具有在BLIT操作时进行色彩空间转换的能力
DDCAPS_BLTQUEUE = 128 显示硬件具有异步BLIT操作能力
DDCAPS_BLTSTRETCH = 512 显示硬件具有在BLT操作时进行拉伸的能力
DDCAPS_CANBLTSYSMEM = -2147483648 显示硬件具有从或到系统内存进行BLIT操作的能力
DDCAPS_CANCLIP = 536870912 显示硬件具有BLIT操作的能力
DDCAPS_CANCLIPSTRETCHED = 1073741824 显示硬件具有在拉伸BLIT操作剪的能力
DDCAPS_COLORKEY = 4194304 支持在BLIT操作或作一覆盖中某些色键的构成,更精确的色键能力信息在ICKeyCaps成员中可以获得
DDCAPS_COLORKEYHWASSIST = 16777216 色键是硬件协助的一部分。这意味着其它资源(CPU或内存)可以使用。如果这个位没有设置,全面硬件支持是适当的。
DDCAPS_GDI = 1024 显示硬件被GDI共享
DDCAPS_NOHARDWARE = 33554432 无硬件支持
DDCAPS_OVERLAY = 2048 显示硬件支持覆盖
DDCAPS_OVERLAYCANTCLIP = 4096 显示硬件支持覆盖但无法
DDCAPS_OVERLAYFOURCC = 8192 覆盖硬件在进行覆盖操作时具有色彩空间转换的能力
DDCAPS_OVERLAYSTRETCH = 16384 覆盖硬件具有拉伸能力。 lMinOverlayStretch 和lMaxOverlayStretch成员包含有效数据
DDCAPS_PALETTE = 32768 DirectDraw具有建立并支持DirectDrawPalette对象用于更多而不仅是主绘图表面的能力
DDCAPS_PALETTEVSYNC = 65536 DirectDraw具有在垂直刷新时同步更新调色板的能力
DDCAPS_READSCANLINE = 131072 显示硬件具有返回当前扫描线的能力
DDCAPS_VBI = 524288 显示硬件具有产生一个垂直空中断信号的能力
DDCAPS_ZBLTS = 1048576 支持在BLIT操作时使用Z-buffer
DDCAPS_ZOVERLAYS = 2097152 支持DirectDrawSurface7.UpdateOverlayZOrder方法用于作为z值控制覆盖的层次
End Enum

======================================================================================================================
CONST_DDCAPS2FLAGS

CONST_DDCAPS2FLAGS 枚举用于DDCAPS类型的lCaps2, lNLVBCaps2, lSVBCaps2成员描述额外的特殊驱动能力

Enum CONST_DDCAPS2FLAGS
DDCAPS2_AUTOFLIPOVERLAY = 8 每当一个视频端口的垂直同步发生时,覆盖图被自动换页到在换页链中的下一个绘图面,允许视频口和覆盖图双缓冲视频而没有CPU开销,此选项仅可用在一个视频端口从绘图面接收数据时,当视频数据是逐行扫描的,在每次垂直同步时换页,当数据在内存中是隔行的,每隔一次垂直同步换页
DDCAPS2_CANBOBHARDWARE = 16384 覆盖硬件可以显示单个隔行视频流的每一场
DDCAPS2_CANBOBINTERLEAVED = 16 当单个视频流交错存储在内存中,在没有特殊硬件支持时没有导致也许通常会发生的不正常信号,覆盖硬件可以显示单个隔行视频流的每一场。此选项仅可用在一个视频端口从绘图面接收数据时且视频在垂直方向上缩放至少两次。
DDCAPS2_CANBOBNONINTERLEAVED = 32  当单个视频流逐行存储在内存中,在没有特殊硬件支持没有导致也许通常会发生的不正常信号,覆盖硬件可以显示单个隔行视频流的每一场。此选项仅可用在一个视频端口从绘图面接收数据时且视频在垂直方向上缩放至少两次。
DDCAPS2_CANCALIBRATEGAMMA = 1048576 系统安装了一个可以自动调整gamma斜率的校正器,所以在所有具有校正器的系统结果是一样的。当设置一个新的gamma级时调用这个校正器,,在调用DirectDrawGammaControl.SetGammaRamp方法时使用DDSGR_CALIBRATE标记。校正gamma斜率导致某些处理开销,不应该经常使用。
DDCAPS2_CANDROPZ16BIT = 256  16-bit RGBZ值可用于被转换到16bit RGB值(系统不支持8-bit转换)
DDCAPS2_CANFLIPODDEVEN = 8192  驱动有能力执行奇偶换页操作,通过使用 DirectDrawSurface7.Flip 方法的DDFLIP_ODD 和DDFLIP_EVEN标记来指定。
DDCAPS2_CANMANAGETEXTURE = 8388608 Microsoft® Direct3D®纹理管理器使用这一能力决定是否放置管理的绘图面在非本地显存,如果此能力可用,纹理管理器放置管理的绘图面到非本地显存。无法从本地显存获得贴图的的驱动不得不使用此能力。
DDCAPS2_CANRENDERWINDOWED = 524288  驱动有能力在窗口模式渲染
DDCAPS2_CERTIFIED = 1  显示硬件已鉴定
DDCAPS2_COLORCONTROLOVERLAY = 64  覆盖绘图面包含色彩控制(例如亮度和锐度)
DDCAPS2_COLORCONTROLPRIMARY = 128  主绘图面包含色彩控制(例如gamma)
DDCAPS2_COPYFOURCC = 32768  驱动支持blit任何FOURCC绘图面到另一相同FOURCC的绘图面
DDCAPS2_FLIPINTERVAL = 2097152 驱动响应DDFLIP_INTERVAL*标志(看DirectDrawSurface7.Flip)
DDCAPS2_FLIPNOVSYNC = 4194304 驱动响应DDFLIP_NOVSYNC 标志(看DirectDrawSurface7.Flip)
DDCAPS2_NO2DDURING3DSCENE = 2类似 DirectDrawSurface7.Blt 和 DirectDrawSurface7.Lock 这样的2D操作不能在Direct3DDevice7.BeginScene和Direct3DDevice7.EndScene方法之间的Direct3D的任何绘图面中使用
DDCAPS2_NONLOCALVIDMEM = 512  显示驱动支持在非本地显存中的绘图面
DDCAPS2_NONLOCALVIDMEMCAPS = 1024  非本地显存绘图面的BLIT能力不同于本地显存绘图面。如果此标志给出,DDCAPS2_NONLOCALVIDMEM标志也给出
DDCAPS2_NOPAGELOCKREQUIRED = 2048  支持在未“页锁定”的系统内存绘图面的DMA BLIT操作
DDCAPS2_PRIMARYGAMMA = 131072  支持用于主绘图面的动态gamma斜率(更多信息,看Gamma and Color Controls)
DDCAPS2_STEREO = 33554432 DirectX7.0的新功能。打开ddcaps.dwSVCaps位支持立体模式。驱动可以在除当前模式外的至少一个模式下做立体。应用程序可以使用DirectDraw7.GetDisplayMode 获得DirectDraw7.GetDisplayModesEnum 每一模式的立体信息。
DDCAPS2_VIDEOPORT = 4  显示硬件支持实况视频
DDCAPS2_WIDESURFACES = 4096  显示绘图面支持宽过主绘图面的绘图面
End Enum

===========================================================================================================================

CONST_DDCKEYCAPSFLAGS

CONST_DDCKEYCAPSFLAGS 用于 lCKeyCaps, lNLVBCKeyCaps, lSSBCKeyCaps, lSVBCKeyCaps, and lVSBCKeyCaps members of the DDCAPS 类型描述硬件的色键能力
Enum CONST_DDCKEYCAPSFLAGS
DDCKEYCAPS_DESTBLT = 1 支持色键(color key)的透明BLIT,确定目标绘图面的可替换位,用于RGB色
DDCKEYCAPS_DESTBLTCLRSPACE = 2 支持色彩空间(color space)的透明BLIT,确定目标绘图面的可替换位,用于RGB色
DDCKEYCAPS_DESTBLTCLRSPACEYUV = 4 支持色彩空间(color space)的透明BLIT,确定目标绘图面的可替换位,用于YUV色
DDCKEYCAPS_DESTBLTYUV = 8 支持色键(color key)的透明BLIT,确定目标绘图面的可替换位,用于YUV色
DDCKEYCAPS_DESTOVERLAY = 16 支持色键覆盖,确定目标绘图面的可替换位被覆盖,用于RGB色
DDCKEYCAPS_DESTOVERLAYCLRSPACE = 32 支持一个色彩空间作为色键用于RGB色的目标绘图面
DDCKEYCAPS_DESTOVERLAYCLRSPACEYUV = 64 支持一个色彩空间作为色键用于YUV色的目标绘图面
DDCKEYCAPS_DESTOVERLAYONEACTIVE = 128 仅支持一个活动目标色键用于可见覆盖绘图面
DDCKEYCAPS_DESTOVERLAYYUV = 256 支持色键覆盖,确定目标绘图面的可替换位被覆盖,用于YUV色
DDCKEYCAPS_NOCOSTOVERLAY = 262144 没有空闲带宽用于覆盖操作的色键DirectDraw 7.0 SDK For VisualBasic程序员指南
DDCKEYCAPS_SRCBLT = 512 支持透明BLIT,使用源绘图面的色键,用于RGB色
DDCKEYCAPS_SRCBLTCLRSPACE = 1024 支持透明BLIT,使用源绘图面的色彩空间,用于RGB色
DDCKEYCAPS_SRCBLTCLRSPACEYUV = 2048 支持透明BLIT,使用源绘图面的色彩空间,用于YUV色
DDCKEYCAPS_SRCBLTYUV = 4096 支持透明BLIT,使用源绘图面的色键,用于YUV色
DDCKEYCAPS_SRCOVERLAY = 8192 支持覆盖,使用源绘图面的色键,用于RGB色
DDCKEYCAPS_SRCOVERLAYCLRSPACE = 16384 支持覆盖,使用色彩空间作为源绘图面的色键,用于RGB色
DDCKEYCAPS_SRCOVERLAYCLRSPACEYUV = 32768 支持覆盖,使用色彩空间作为源绘图面的色键,用于YUV色
DDCKEYCAPS_SRCOVERLAYONEACTIVE = 65536 仅支持一个活动源色键用于可见覆盖绘图面
DDCKEYCAPS_SRCOVERLAYYUV = 131072 支持覆盖,使用源绘图面的色键,用于YUV色
End Enum

CONST_DDCKEYFLAGS

CONST_DDCKEYFLAGS 用于DirectDrawSurface7.SetColorKey方法指定所需色键的标志参数

Enum CONST_DDCKEYFLAGS
DDCKEY_COLORSPACE = 1 色彩空间。如果仅包含单个色键不要设置
DDCKEY_DESTBLT = 2 作为目标色键BLIT操作的色键或色彩空间
DDCKEY_DESTOVERLAY = 4 作为目标色键覆盖操作的色键或色彩空间
DDCKEY_SRCBLT = 8 作为源色键BLIT操作的色键或色彩空间
DDCKEY_SRCOVERLAY = 16 作为源色键覆盖操作的色键或色彩空间
End Enum

=====================================================================================================================
CONST_DDCOLORFLAGS

CONST_DDCOLORFLAGS 用于DDCOLORCONTROL类型的lFlags成员,用于指定DDCOLORCONTROL的某一个成员包含有效数据

Enum CONST_DDCOLORFLAGS
DDCOLOR_BRIGHTNESS = 1 lBrightness 成员包含可用数据
DDCOLOR_COLORENABLE = 64 lColorEnable 成员包含可用数据
DDCOLOR_CONTRAST = 2 lContrast 成员包含可用数据
DDCOLOR_GAMMA = 32 lGamma 成员包含可用数据
DDCOLOR_HUE = 4 lHue 成员包含可用数据
DDCOLOR_SATURATION = 8 lSaturation 成员包含可用数据
DDCOLOR_SHARPNESS = 16 lSharpness 成员包含可用数据
End Enum

=====================================================================================================================
CONST_DDDEVICEIDFLAGS

CONST_DDDEVICEIDFLAGS 用于DirectDraw7.GetDeviceIdentifier方法的标志参数用于返回关于系统主适配器(一般是2D)装配一个迭加的第二3D适配器的信息

Enum CONST_DDDEVICEIDFLAGS
DDGDI_DEFAULT = 0 执行在主适配器的正常枚举
DDGDI_GETHOSTIDENTIFIER = 1 导致返回关于系统主适配器(典型的,2D)装配一个迭加的第二3D适配器信息的方法。某一适配器作为主适配器的一部分面向应用程序,但一般位于一块分离的卡上。当dwFlags参数是0,迭加第二适配器的信息被返回,因为这是最精确表现DirectDraw对象相关品质的。
End Enum

CONST_DDEDMFLAGS

The CONST_DDEDMFLAGS用于 DirectDraw7.GetDisplayModesEnum方法的标志参数以指定枚举的类型

Enum CONST_DDEDMFLAGS
DDEDM_DEFAULT = 0 执行一个显示模式的正常枚举
DDEDM_REFRESHRATES = 1 用不同的刷新率枚举显示模式,这保证一个详细的模式只被枚举一次,这个标志指出当确定一个模式是否唯一时,是否考虑刷新率
DDEDM_STANDARDVGAMODES = 2 除了320x200x8 mode X mode,枚举mode 13
End Enum

CONST_DDENUMOVERLAYZFLAGS

CONST_DDENUMOVERLAYZFLAGS 用于 DirectDrawSurface7.GetOverlayZOrdersEnum方法的标志参数 控制用何种方法枚举覆盖图的z排序

Enum CONST_DDENUMSURFACESFLAGS
DDENUMOVERLAYZ_BACKTOFRONT = 0 从后到前枚举覆盖
DDENUMOVERLAYZ_FRONTTOBACK = 1 从前到后枚举覆盖
End Enum


CONST_DDENUMSURFACESFLAGS

The CONST_DDENUMSURFACESFLAGS enumeration is used by the DirectDraw7.GetSurfacesEnum method to control how the method enumerates attached surfaces.

Enum CONST_DDENUMSURFACESFLAGS
DDENUMSURFACES_ALL = 1
DDENUMSURFACES_CANBECREATED = 8
DDENUMSURFACES_DOESEXIST = 16
DDENUMSURFACES_MATCH = 2
DDENUMSURFACES_NOMATCH = 4
End Enum

CONST_DDFXCAPSFLAGS

CONST_DDFXCAPSFLAGS 用于 DDCAPS 类型的lFXCaps, lNLVBFXCaps, lSSBFXCaps, lSVBFXCaps, and lVSBFXCaps 成员以描述 硬件特殊拉伸和效果能力, 非本地到本地显存BLIT能力,系统系统内存到系统内存BLIT能力,系统内存到显存和显存到系统内在BLIT能力。

Enum CONST_DDFXCAPSFLAGS
DDFXCAPS_BLTALPHA = 1 支持ALPHA混合BLIT操作
DDFXCAPS_BLTARITHSTRETCHY = 32 对在BLIT操作中的缩放绘图面,使用算术操作,胜于像素加倍技术。沿Y轴,水平方向发生。
DDFXCAPS_BLTARITHSTRETCHYN = 16 对在BLIT操作中的缩放绘图面,使用算术操作,胜于像素加倍技术。沿Y轴,水平方向发生,仅工作在整数缩放(x1,x2这样)
DDFXCAPS_BLTFILTER = 32 对于弯曲BLIT,驱动可以做绘图面重构
DDFXCAPS_BLTMIRRORLEFTRIGHT = 64 支持在一个Blit操作中,左右镜像
DDFXCAPS_BLTMIRRORUPDOWN = 128 支持在一个Blit操作中,上下镜像
DDFXCAPS_BLTROTATION = 256 支持在BLIT操作中任意旋转
DDFXCAPS_BLTROTATION90 = 512 支持在BLIT操作中90度旋转
DDFXCAPS_BLTSHRINKX = 1024 支持沿x轴(水平方向)绘图面的任意收缩,此标志仅在BLIT操作有效
DDFXCAPS_BLTSHRINKXN = 2048 支持沿x轴(水平方向)绘图面的整数(x1,x2等)倍收缩,此标志志仅在BLIT操作有效
DDFXCAPS_BLTSHRINKY = 4096 支持沿y轴(垂直方向)绘图面的任意收缩,此标志仅在BLIT操作有效
DDFXCAPS_BLTSHRINKYN = 8192 支持沿y轴(垂直方向)绘图面的整数(x1,x2等)倍收缩,此标志志仅在BLIT操作有效
DDFXCAPS_BLTSTRETCHX = 16384 支持沿x轴(水平方向)绘图面的任意拉伸,此标志仅在BLIT操作有效
DDFXCAPS_BLTSTRETCHXN = 32768 支持沿x轴(水平方向)绘图面的整数(x1,x2等)拉伸,此标志志仅在BLIT操作有效
DDFXCAPS_BLTSTRETCHY = 65536 支持沿y轴(垂直方向)绘图面的任意拉伸,此标志仅在BLIT操作有效
DDFXCAPS_BLTSTRETCHYN = 131072 支持沿y轴(垂直方向)绘图面的整数(x1,x2等)拉伸,此标志志仅在BLIT操作有效
DDFXCAPS_BLTTRANSFORM = 2 支持BLIT精灵的几何变换(或扭曲),对显性BLIT操作,变形不是普通支持的
DDFXCAPS_OVERLAYALPHA = 4 支持用于覆盖表面的ALPHA混合
DDFXCAPS_OVERLAYARITHSTRETCHY = 262144 支持用于覆盖绘图面的沿y轴(垂直方向)绘图面的任意拉伸
DDFXCAPS_OVERLAYARITHSTRETCHYN = 8 支持用于覆盖绘图面的沿y轴(垂直方向)绘图面整数拉伸
DDFXCAPS_OVERLAYFILTER = 262144 支持弯曲BLIT精灵的几何变换(或扭曲),对显性覆盖绘图面,变形不是普通支持的
DDFXCAPS_OVERLAYMIRRORLEFTRIGHT = 134217728 支持跨越垂直轴的覆盖图镜像
DDFXCAPS_OVERLAYMIRRORUPDOWN = 268435456 支持跨越水平轴的覆盖图镜像
DDFXCAPS_OVERLAYSHRINKX = 524288 支持沿x轴(水平方向)覆盖绘图面的任意收缩,此标志仅对DDSCAPS_OVERLAY绘图面有效,此标志仅显示绘图面的性能,它并未说明收缩是可用的。
DDFXCAPS_OVERLAYSHRINKXN = 1048576 支持沿x轴(水平方向)覆盖绘图面的整数倍收缩,此标志仅对DDSCAPS_OVERLAY绘图面有效,此标志仅显示绘图面的性能,它并未说明收缩是可用的。
DDFXCAPS_OVERLAYSHRINKY = 2097152 支持沿y轴(垂直方向)覆盖绘图面的任意收缩,此标志仅对DDSCAPS_OVERLAY绘图面有效,此标志仅显示绘图面的性能,它并未说明收缩是可用的。
DDFXCAPS_OVERLAYSHRINKYN = 4194304 支持沿y轴(垂直方向)覆盖绘图面的整数倍收缩,此标志仅对DDSCAPS_OVERLAY绘图面有效,此标志仅显示绘图面的性能,它并未说明收缩是可用的。
DDFXCAPS_OVERLAYSTRETCHX = 8388608 支持沿x轴(水平方向)覆盖绘图面的任意拉伸,此标志仅对DDSCAPS_OVERLAY绘图面有效,此标志仅显示绘图面的性能,它并未说明拉伸是可用的。
DDFXCAPS_OVERLAYSTRETCHXN = 16777216 支持沿x轴(水平方向)覆盖绘图面的整数倍拉伸,此标志仅对DDSCAPS_OVERLAY绘图面有效,此标志仅显示绘图面的性能,它并未说明拉伸是可用的。
DDFXCAPS_OVERLAYSTRETCHY = 33554432 支持沿y轴(垂直方向)覆盖绘图面的任意拉伸,此标志仅对DDSCAPS_OVERLAY绘图面有效,此标志仅显示绘图面的性能,它并未说明拉伸是可用的。
DDFXCAPS_OVERLAYSTRETCHYN = 67108864 支持沿y轴(垂直方向)覆盖绘图面的整数拉伸,此标志仅对DDSCAPS_OVERLAY绘图面有效,此标志仅显示绘图面的性能,它并未说明拉伸是可用的。
DDFXCAPS_OVERLAYTRANSFORM = 536870912 支持覆盖精灵的几何变换(或扭曲),对显性显示覆盖绘图面,变形不是普通支持的
End Enum


CONST_DDGBSFLAGS

CONST_DDGBSFLAGS用于 DirectDrawSurface7.GetBltStatus方法的标志参数指定获得何种状态的类型

Enum CONST_DDGBSFLAGS
DDGBS_CANBLT = 1 询问涉及绘图面的BLIT操作是否可以立即发生,如果BLIT可以完成,返回DD_OK
DDGBS_ISBLTDONE = 2 询问BLIT是否完成,如果绘图面的最后一次BLIT已经成功,返回DD_OK
End Enum


CONST_DDGFSFLAGS

The CONST_DDGFSFLAGS用于 DirectDrawSurface7.GetFlipStatus方法的标志参数指定获得换页状态的类型

Enum CONST_DDGFSFLAGS
DDGFS_CANFLIP = 1 询问绘图面是否可以立即换页,如果换页可以完成,返回DD_OK
DDGFS_ISFLIPDONE = 2 询问换页是否完成,如果绘图面的最后一次换页已经成功,返回DD_OK
End Enum
CONST_DDLOCKFLAGS

CONST_DDLOCKFLAGS 用于DirectDrawSurface7.Lock 和 Direct3DVertexBuffer7.Lock方法的标志参数指定锁定是如何执行的

Enum CONST_DDLOCKFLAGS
DDLOCK_DONOTWAIT = 16384 缺省是DDLOCK_WAIT,如果你想在加速器忙(通过DDERR_WASSTILLDRAWING值指示)的时候不顾缺省值使用时间,使用DDLOCK_DONOTWAIT
DDLOCK_EVENT = 2 未普通实现
DDLOCK_NOSYSLOCK = 2048 如果可能,不要接受Win16Mutex(也叫Win16Lock),当锁定主绘图面,此标志被忽略。
DDLOCK_READONLY = 16 绘图面被锁定只读
DDLOCK_SURFACEMEMORYPTR = 0 指定矩形顶部的一个有效内存指针将被返回,如果未指定矩形,绘图面顶部指针将返回,这是缺省的。
DDLOCK_WAIT = 1 如果因为BLIT在进行中而使得锁定无法获得,此方法再次尝试,直到获得锁定或另一个错误发生,例如DDERR_SURFACEBUSY这样的。
DDLOCK_WRITEONLY = 32 绘图面被锁定成可写
End Enum

CONST_DDOVERFLAGS

CONST_DDOVERFLAGS 中的标志用于DirectDrawSurface7.UpdateOverlay 方法的标志成员去修改在一个覆盖绘图面的可视属性

Enum CONST_DDOVERFLAGS
DDOVER_ADDDIRTYRECT = 32768 增加一个脏矩形(dirty rectangle)到一个模拟覆盖绘图面
DDOVER_ALPHADEST = 1 废弃
DDOVER_ALPHADESTCONSTOVERRIDE = 2 使用DDOVERLAYFX类型的lAlphaDestConst成员作为这个覆盖绘图面的目的ALPHA通道
DDOVER_ALPHADESTNEG = 4 目的绘图面成为更透明象ALPHA值增加(0是不透明)
DDOVER_ALPHADESTSURFACEOVERRIDE = 8 使用DDOVERLAYFX类型的lpDDSAlphaDest成员作为这个覆盖绘图面的ALPHA通道目标
DDOVER_ALPHAEDGEBLEND = 16 使用DDOVERLAYFX类型的lAlphaEdgeBlend成员作为与色键颜色接边的图像边缘的ALPHA通道
DDOVER_ALPHASRC = 32 使用在像素格式中的Alpha通道信息或一个绘图面的Alpha通道中的一个附加到源绘图面作为这覆盖绘图面的源alpha通道
DDOVER_ALPHASRCCONSTOVERRIDE = 64 使用DDOVERLAYFX类型的lAlphaSrcConst成员作为这个覆盖绘图面的源ALPHA通道
DDOVER_ALPHASRCNEG = 128 源绘图面成为更透明象ALPHA值增加(0是不透明)
DDOVER_ALPHASRCSURFACEOVERRIDE = 256 使用DDOVERLAYFX类型的lpDDSAlphaSrc成员作为这个覆盖绘图面的ALPHA通道源
DDOVER_ARGBSCALEFACTORS = 33554432 directX 7.0的新常量,覆盖图FX包含一个可用ARGB缩放因数
DDOVER_AUTOFLIP = 1048576 每当一个视频端口垂直同步发生时的自动换页到在换页链中的下一个绘图面
DDOVER_BOB = 2097152 显示隔行视频流的每一场,不导致任何不正常信号
DDOVER_DDFX = 524288 当调用DirectDrawSurface7.UpdateOverlayFx设置此标志插入ddoverfx参数定义指定覆盖图特技,此标志必须被设置,或者忽略ddoverfx参数
DDOVER_DEGRADEARGBSCALING = 67108864 directX 7.0的新常量,ARGB缩放因数被降低以适应驱动器能力
DDOVER_HIDE = 512 关闭此覆盖面
DDOVER_INTERLEAVED = 8388608 绘图面内存由隔行扫描场的组成
DDOVER_KEYDEST = 1024 使用色键与目的绘图面关联
DDOVER_KEYDESTOVERRIDE = 2048 使用DDOVERLAYFX类型的成员dckDestColorkey作为目的绘图面色键
DDOVER_KEYSRC = 4096 使用色键与源绘图面关联
DDOVER_KEYSRCOVERRIDE = 8192 使用DDOVERLAYFX类型的成员dckSrcColorkey成员作为源绘图面的色键
DDOVER_OVERRIDEBOBWEAVE = 4194304 Bob and weave决定了不被其它接口覆盖
DDOVER_REFRESHALL = 131072 在仿真覆盖绘图面上重绘整个绘图面
DDOVER_REFRESHDIRTYRECTS = 65536 在仿真覆盖绘图面上重绘所有脏矩形
DDOVER_SHOW = 16384 打开覆盖绘图面
End Enum
CONST_DDOVERFXFLAGS

在CONST_DDOVERFXFLAGS枚举中的标志是用于DDOVERLAYFX类型中的lDDFX成员指定覆盖层如何使用

Enum CONST_DDPALFLAGS
DDOVERFX_ARITHSTRETCHY = 1 如果拉伸,使用沿Y轴的算术拉伸作用于此覆盖层
DDOVERFX_MIRRORLEFTRIGHT = 2 绕垂直轴镜向覆盖层
DDOVERFX_MIRRORUPDOWN = 4 绕水平轴镜向覆盖层
End Enum

CONST_DDOVERZFLAGS

在 CONST_DDOVERZFLAGS 枚举中的标志用于DirectDrawSurface7.UpdateOverlayZOrder 类型的标志成员设置一个覆盖层的z排序

Enum CONST_DDPALFLAGS
DDOVERZ_INSERTINBACKOF = 5 插入覆盖层在覆盖链中的参考覆盖层之后
DDOVERZ_INSERTINFRONTOF = 4 插入覆盖层在覆盖链中的参考覆盖层之前
DDOVERZ_MOVEBACKWARD = 3 将覆盖层在覆盖链中后移一个位置
DDOVERZ_MOVEFORWARD = 2 将覆盖层在覆盖链中前移一个位置
DDOVERZ_SENDTOBACK = 1 移动覆盖层到覆盖链的后面
DDOVERZ_SENDTOFRONT = 0 移动覆盖层到覆盖链的前面
End Enum


CONST_DDPALFLAGS

在CONST_DDPALFLAGS枚举中的标志用于PALETTEENTRY类型的标志成员指定如何使用调色板

Enum CONST_DDPALFLAGS
PC_DEFAULT = 0 在此标志下,调色板将被使用而不加修改
PC_EXPLICIT = 2 逻辑调色板的低序字指定一个硬件调色板索引,此标志允许应用程序显示显示设备调色板目录
PC_NOCOLLAPSE = 4 色彩放置在系统调色板的未使用条目中,而不是适配一个已存在于系统调色板中的彩色。如果系统调色板中没有未使用条目,此色彩正常适配,一旦此色彩在系统调色板中,在其它逻辑调色板的颜色能匹配此颜色
PC_RESERVED = 1 逻辑调色板被用于调色板动画,此标志防止其它窗口颜色因为调色板条目而频率改变
End Enum

CONST_DDPCAPSFLAGS

CONST_DDPCAPSFLAGS 枚举用于 DirectDraw7.CreatePalette的标志成员作为一个返回值用于DirectDrawPalette.GetCaps 并通过DDCAPS的 lPalCaps成员描述调色板能力

Enum CONST_DDPCAPSFLAGS
DDPCAPS_1BIT = 256 索引是1位,有两种颜色在颜色表中
DDPCAPS_2BIT = 512 索引是2位,有4种颜色在颜色表中
DDPCAPS_4BIT = 1 索引是4位,有16种颜色在颜色表中
DDPCAPS_8BIT = 4 索引是8位,有256种颜色在颜色表中
DDPCAPS_8BITENTRIES = 2 此索引引用一个8位色彩索引。这个标示仅在使用DDPCAPS_1BIT, DDPCAPS_2BIT, or DDPCAPS_4BIT并且当目标绘图面是 8位/像素时是有效的。每个色彩条目是一个字节长并是一个索引到目标绘图的8位/像素调色板
DDPCAPS_ALLOW256 = 64 此调色板有全部256个条目字义
DDPCAPS_ALPHA = 1024 这个与PALETTEENTRY类型相关联的标志成员被认为是一个单独的8位alpha值。用此标志建立的绘图面仅能被绑定到一个纹理(由DDSCAPS_TEXTURE能力标志的一个绘图面的建立)
DDPCAPS_INITIALIZE = 8 被DirectDraw废弃并忽略
DDPCAPS_PRIMARYSURFACE = 16 此调色板绑定到一个主绘图面,改变调色板的色彩表会立即影响到显示除非DDPSETPAL_VSYNC被指定并被支持
DDPCAPS_PRIMARYSURFACELEFT = 32 此调色板绑定到左眼主绘图面,改变调色板的色彩表会立即影响到显示除非DDPSETPAL_VSYNC被指定并被支持
DDPCAPS_VSYNC = 128 此调色板可被修改到与显示器刷新率同步
End Enum


CONST_DDPIXELFORMATFLAGS

CONST_DDPIXELFORMATFLAGS枚举用于DDPIXELFORMAT类型的 lFlags成员指定可选控制标志

Enum CONST_DDPIXELFORMATFLAGS
DDPF_ALPHA = 2 像素格式描述一个唯Alpha绘图面
DDPF_ALPHAPIXELS = 1 绘图面在像素格式中具有Alpha通道信息
DDPF_ALPHAPREMULT = 32768 绘图面用于预乘ALPHA格式,此意思是,在每个像素中的色彩部分被ALPHA部分预乘
DDPF_BUMPDUDV = 524288 在像素格式中的凹凸图是有效的。凹凸图信息是在lBumpBitCount, lBumpDuBitMask, lBumpDvBitMask, 和lBumpLuminanceBitMask成员
DDPF_BUMPLUMINANCE = 262144 在像素格式中的亮度数据是有效的。lLuminanceBitMask成员描述用于唯亮度或亮度Alpha绘图面的有效亮度位
DDPF_COMPRESSED = 128 绘图面接受指定格式的像素格式并在写操作期间压缩它
DDPF_FOURCC = 4 lFourCC成员有效并包含一个FourCC码描述一个非RGB像素格式
DDPF_LUMINANCE = 131072 此像素格式描述一个唯亮度或亮度Alpha绘图面
DDPF_PALETTEINDEXED1 = 2048 绘图面是1、2、4、8位色彩索引
DDPF_PALETTEINDEXED2 = 4096
DDPF_PALETTEINDEXED4 = 8
DDPF_PALETTEINDEXED8 = 32
DDPF_PALETTEINDEXEDTO8 = 16 绘图面是一个1、2、4位色彩索引到一个8位调色板
DDPF_RGB = 64 在像素格式类型的RGB数据是有效的
DDPF_RGBTOYUV = 256 绘图面接受RGB数据并在写操作期间转换为YUV数据,被写入的数据格式包含在像素格式类型中。DDPF_RGB标志设置
DDPF_STENCILBUFFER = 16384 绘图面编码模版和深度信息在z缓冲的每个像素中
DDPF_YUV = 512 在像素格式类型中的YUV数据是有效的
DDPF_ZBUFFER = 1024 像素格式描述一个仅z缓冲绘图面
DDPF_ZPIXELS = 8192 绘图面在像素中包含z信息
End Enum


CONST_DDRAW

The CONST_DDRAW 包含贯穿DirectDraw的常数使用

Enum CONST_DDRAW
DD_ROP_SPACE = 8 缺省win32光栅操作
End Enum


CONST_DDSCLFLAGS

CONST_DDSCLFLAGS 枚举是用于DirectDraw7.SetCooperativeLevel方法的标志参数以测定应用程序的顶级动作

Enum CONST_DDSCLFLAGS
DDSCL_ALLOWMODEX = 64 允许使用mode X显示模式,此标志仅在DDSCL_EXCLUSIVE and DDSCL_FULLSCREEN标志出现时使用
DDSCL_ALLOWREBOOT = 2 允许在全屏独占模式下的CTRL+ALT+DEL 功能
DDSCL_CREATEDEVICEWINDOW = 512 此标志仅支持windows98和windows2000,指出DirectDraw建立并管理一个缺省设备窗口用于DirectDraw对象
DDSCL_EXCLUSIVE = 16 请求排外级别,此标志必须与DDSCL_FULLSCREEN标志同时使用
DDSCL_FULLSCREEN = 1 显示排除模式的拥有者负责整个绘图面.GDI被忽略,必须和DDSCL_EXCLUSIVE 一起使用
DDSCL_MULTITHREADED = 1024 请求多线程安全DirectDraw动作,这导致Direct3D更频率地采取全局临界断面
DDSCL_NORMAL = 8 应用程序作为正常的windows应用程序。此标志不能与DDSCL_ALLOWMODEX, DDSCL_EXCLUSIVE, or DDSCL_FULLSCREEN 一起使用
DDSCL_NOWINDOWCHANGES = 4 DirectDraw不允许在激活时最小化、恢复应用程序窗口
DDSCL_SETDEVICEWINDOW = 256 此标志仅支持windows98和windows2000,指出hdl参数是用于DirectDraw对象的设备窗口的窗口句柄,此标志不能与DDSCL_SETFOCUSWINDOW一起使用
DDSCL_SETFOCUSWINDOW = 128 此标志仅支持windows98和windows2000,指出hdl参数是用于DirectDraw对象的焦点窗口的窗口句柄,此标志不能与DDSCL_SETDEVICEWINDOW一起使用
End Enum


CONST_DDSDMFLAGS

The CONST_DDSDMFLAGS 枚举用于DirectDraw7.SetDisplayMode 方法的标志参数设置显示设备硬件的模式

Enum CONST_DDSDMFLAGS
DDSDM_DEFAULT = 0   为modeX设置模式,不取代mode 13
DDSDM_STANDARDVGAMODE = 1 引起方法设置mode 13,代替320x240x8模式,如果你设置其它的分辨率、位深或mode X模式,不要设置此标志,设置此参数为0
End Enum

CONST_DDSGRFLAGS

The CONST_DDSGRFLAGS 枚举用于 DirectDrawGammaControl.SetGammaRamp方法的标志参数以显示gamma校正是否需要

Enum CONST_DDSGRFLAGS
DDSGR_CALIBRATE = 1 请求校准器按照显示设备的物理性质调节gamma斜线,使得在所有系统中结果一致。如果校准不需要,设置参数为0
DDSGR_DEFAULT = 0 设置gamma斜线对显示设备的物理性质没有校准
End Enum
CONST_DDSTEREOCAPSFLAGS

CONST_DDSTEREOCAPSFLAGS 枚举通过DDCAPS类型的lSVCaps 成员描述立体视觉能力.

Enum CONST_DDSTEREOCAPSFLAGS
DDSVCAPS_ENIGMA = 1 立体观察用Enigma编码实现
DDSVCAPS_FLICKER = 2 立体观察用高频抖动实现
DDSVCAPS_REDBLUE = 4 立体观察用观察者通过放置在左右眼上红蓝滤镜观察图像来实现
DDSVCAPS_SPLIT = 8 立体观察通过分屏技术实现
DDSVCAPS_STEREOSEQUENTIAL = 16 驱动可以完成立体效果除了在当前模式至少一个模式。应用程序可以使用DirectDraw7.GetDisplayMode 或 DirectDraw7.GetDisplayModesEnum 获得每个模式的立体信息.
End Enum


CONST_DDSURFACECAPS2FLAGS

CONST_DDSURFACECAPS2FLAGS枚举使用DDSCAPS2类型的 lCaps2 成员描述额外的绘图面能力.

Enum CONST_DDSURFACECAPS2FLAGS
DDSCAPS2_CUBEMAP = 512 DirectX7.0新内容,此绘图面是一个立方体环境贴图
DDSCAPS2_CUBEMAP_ALLFACES = 65024 DirectX7.0新内容,用于DDSCAPS2_CUBEMAP 标志建立一个立方体的六个面的环境贴图
DDSCAPS2_CUBEMAP_NEGATIVEX = 2048 DirectX7.0新内容,用于DDSCAPS2_CUBEMAP 标志建立负一个立方体的负X面环境贴图
DDSCAPS2_CUBEMAP_NEGATIVEY = 8192 DirectX7.0新内容,用于DDSCAPS2_CUBEMAP 标志建立负一个立方体的负Y面环境贴图
DDSCAPS2_CUBEMAP_NEGATIVEZ = 32768 DirectX7.0新内容,用于DDSCAPS2_CUBEMAP 标志建立负一个立方体的负Z面环境贴图
DDSCAPS2_CUBEMAP_POSITIVEX = 1024 DirectX7.0新内容,用于DDSCAPS2_CUBEMAP 标志建立负一个立方体的正X面环境贴图
DDSCAPS2_CUBEMAP_POSITIVEY = 4096 DirectX7.0新内容,用于DDSCAPS2_CUBEMAP 标志建立负一个立方体的正Y面环境贴图
DDSCAPS2_CUBEMAP_POSITIVEZ = 16384 DirectX7.0新内容,用于DDSCAPS2_CUBEMAP 标志建立负一个立方体的正Z面环境贴图
DDSCAPS2_D3DTEXTUREMANAGE = 131072   DirectX7.0新内容,此纹理总是由Direct3D管理
DDSCAPS2_HARDWAREDEINTERLACE = 2          绘图面使用去隔行硬件从视频啇口接收数据,这允许驱动分配缓冲给任何所需的额外缓冲,DDSCAPS_VIDEOPORT 和DDSCAPS_OVERLAY标志必须也要设置
DDSCAPS2_HINTANTIALIASING = 256 应用程序打算使用反走样,仅当DDSCAPS_3DDEVICE设置时有效
DDSCAPS2_HINTDYNAMIC = 4          表明驱动的绘图面锁定很频繁(用于程序贴图,动态光照贴图等)此标志仅用于纹理贴图表面,此标志不能与DDSCAPS2_HINTSTATIC 或DDSCAPS2_OPAQUE 标志一起使用
DDSCAPS2_HINTSTATIC = 8 表明此绘图面的驱动可被记录或retiled,此选项不能改变纹理贴图的尺寸。它是相对快速和匀称的(尽管如此做时性能退化),此标志仅可用于纹理绘图面,不能与DDSCAPS2_HINTDYNAMIC 或DDSCAPS2_OPAQUE标志一起使用
DDSCAPS2_MIPMAPSUBLEVEL = 65536 DirectX7.0新内容,放宽GetAttachedSurface的使用,而不是EnumAttachedSurfaces,用于诸如有超过一个mip-map绘图面附着到根绘图面的立方体贴图的绘图面结构。这应该被设置在mipmaps中的所有非顶级绘图面,因此所有对GetAttachedSurface的调用可以与顶级绘图面和附着mipmap绘图面区别开来。此性能被CreateSurface所忽略。
DDSCAPS2_OPAQUE = 128 表明此绘图面的驱动不能再次锁定,驱动通过重组和压缩释放优化绘图面。这样的绘图面无法锁定或用着绘图面BLIT操作,企图使用此能力BLIT操作或锁定失败。此标志仅用于纹理贴图表面,不能与DDSCAPS2_HINTDYNAMIC 或 DDSCAPS2_HINTSTATIC标志一起使用
DDSCAPS2_STEREOSURFACELEFT = 524288 DirectX7.0新内容,绘图面是一个立体换页链的一部分,当此标志在DirectDraw7.CreateSurface调用期间设置,一对立体绘图面被建立用于主换页链的每个缓冲被建立主换页链,你必须建立一个复杂的换页链(有后台缓冲)你不能建立一个单独设置的立体绘图面,DirectDrawSurface7.Flip 方法需要后台缓冲(至少四个绘图面被建立)
DDSCAPS2_TEXTUREMANAGE = 16 如果驱动有能力,此客户将象纹理绘图面一样被驱动管理,否则被Direct3D快速方式管理(DirectX7.0新内容),此标志仅用于纹理贴图表面,更多信息,看Direct3D快速模式中的Automatic Texture Management,如果你的应用程序使用Direct3D保留模式,不要使用此标志,而是在系统内存建立纹理,并允许保留模式管理它们。
End Enum

CONST_DDSURFACECAPSFLAGS

CONST_DDSURFACECAPSFLAGS 枚举用于DDSCAPS2类型的lCaps成员描述绘图面的性能
Enum CONST_DDSURFACECAPSFLAGS
DDSCAPS_3DDEVICE = 8192 此绘图面可用于3D渲染,应用程序可使用此标志以确保设备渲染到从正确堆分配的具有离屏绘图面的某一堆
DDSCAPS_ALLOCONLOAD = 67108864 未使用,被DirectDraw和Direct3D忽略
DDSCAPS_ALPHA = 2 此绘图面包含仅Alpha信息
DDSCAPS_BACKBUFFER = 4 此绘图面是一个绘图面换页类型的后台缓冲,典型的,是当DDSCAPS_FLIP标志使用时通过CreateSurface方法设置,唯一立刻在DDSCAPS_FRONTBUFFER 表面之前的表面有这能力被设置。其它的标志由存在的DDSCAPS_FLIP 标志,它们附件的次序,及缺少的DDSCAPS_FRONTBUFFER and DDSCAPS_BACKBUFFER 能力识别为后台缓冲,如果此能力发送到CreateSurface方法,一个保持独立的后台缓冲建立了。当此方法被调用,此绘图面被附加到一个前台绘图面或另一个后台缓冲,或都是来自于同一个换页绘图面类型的绘图面。更多信息,请看DirectDrawSurface7.AddAttachedSurface,DirectDraw支持在一个换页类型中任意数量的绘图面
DDSCAPS_COMPLEX = 8 一个复合绘图面被描绘。一个复合绘图面源于多于一个绘图面的建立。额外的绘图面被附加于根绘图面,复合类型仅能通过根绘图面的消灭而消灭。
DDSCAPS_FLIP      = 16 此绘图面是一个绘图面换页类型的一部分,当此能力传递到CreateSurface方法,一个前台缓冲和一个或多个后台缓冲被建立。DirectDraw 设置DDSCAPS_FRONTBUFFER 位在前台缓冲绘图面,设置 DDSCAPS_BACKBUFFER 位在邻接于前台缓冲绘图面的绘图面上。DDSURFACEDESC2类型的 lBackBufferCount成员必须至少设为1,以使此方法调用成功。 当使用CreateSurface建立多重绘图面时,DDSCAPS_COMPLEX能力必须总是设置。.
DDSCAPS_FRONTBUFFER = 32 此绘图面是一个绘图页换页类型的前台缓冲,当DDSCAPS_FLIP 能力被设置,此标志典型地通过CreateSurface 方法设置,如果此能力发送到CreateSurface方法,一个独立前台缓冲被建立。此绘图面不具有DDSCAPS_FLIP 能力,它可以被绑定到其它后台缓冲,通过使   用DirectDrawSurface7.AddAttachedSurface.方法构成一个换页类型。
DDSCAPS_HWCODEC = 1048576   绘图面能通过硬件具有流解压
DDSCAPS_LIVEVIDEO = 524288   绘图面可以接收实况视频
DDSCAPS_LOCALVIDMEM = 268435456 此绘图面存在于真实的本地显存,而不是非本地显存,如果此标志被指定,DDSCAPS_VIDEOMEMORY标志必须被指定。此标志不能与DDSCAPS_NONLOCALVIDMEM 一起使用。
DDSCAPS_MIPMAP = 4194304 此绘图面是一个mipmap的一级,此绘图面绑定到其它DDSCAPS_MIPMAP绘图面构成mipmaps。建立一定数目的绘图面,并通过DirectDrawSurface7.AddAttachedSurface方法绑定它们来显式完成,或暗中通过CreateSurface 方法,如果此能力设置,DDSCAPS_TEXTURE 标志也必须设置。
DDSCAPS_MODEX = 2097152 此绘图面是320×200 或320×240 Mode X 绘图面
DDSCAPS_NONLOCALVIDMEM = 536870912 此绘图面存在于非本地显存,而不是真实的本地显存,如果此标志指定,DDSCAPS_VIDEOMEMORY 标志也必须被指定,此标志不能与DDSCAPS_LOCALVIDMEM 标志同时使用。
DDSCAPS_OFFSCREENPLAIN = 64 此绘图面不是覆盖绘图面、纹理、z缓冲,前台缓冲、后台缓冲或Alpha绘图面的任一种,它用于确定无格式绘图面
DDSCAPS_OPTIMIZED = -2147483648 当前未实现
DDSCAPS_OVERLAY = 128 此绘图面是覆盖绘图面,它可以或不可以立即可见,依赖于是否覆盖在一个主绘图面之上,如果它当前是覆盖的,DDSCAPS_VISIBLE可用于测定。
DDSCAPS_OWNDC = 262144 绘图面具有一个设备描述表(DC)长期关联
DDSCAPS_PALETTE = 256 此设备驱动允许一个唯一的DirectDrawPalette对象被建立并绑定到此绘图面
DDSCAPS_PRIMARYSURFACE = 512 绘图面是主绘图面,它表现了什么是当前可见的
DDSCAPS_RESERVED2 = 8388608 为未来功能保留
DDSCAPS_STANDARDVGAMODE = 1073741824    绘图面是标准VGA模式绘图面,不是Mode X绘图面,此标志不能与DDSCAPS_MODEX 联合使用
DDSCAPS_SYSTEMMEMORY = 2048 绘图面内存在系统内存中分配
DDSCAPS_TEXTURE = 4096 绘图面可用作3D纹理,并不表明绘图面为那个目的被使用
DDSCAPS_VIDEOMEMORY = 16384 绘图面存在于显示内存
DDSCAPS_VIDEOPORT = 134217728 绘图面可以从视频端口接收数据
DDSCAPS_VISIBLE = 32768 改变此绘图面模式为立即可见,总是设置用于主绘图面,也用作覆盖和纹理贴图
DDSCAPS_WRITEONLY = 65536 对绘图面的只写访问被允许,对此绘图面的读取将发生一个一般保护性错误,而从表面读取结果将是不确定的。
DDSCAPS_ZBUFFER = 131072 绘图面是z缓冲,z缓冲包含着不能被显示的信息,反而, 它包含使用确定的位深度信息哪个映像点是可看见的并且哪些被遮挡的。

End Enum
CONST_DDSURFACEDESCFLAGS

CONST_DDSURFACEDESCFLAGS枚举用于 DDSURFACEDESC2类型的lFlags成员以指定DDSURFACEDESC2的哪一个成员包含有效数据

Enum CONST_DDSURFACEDESCFLAGS
DDSD_ALL = 1047022 所有输入成员有效
DDSD_ALPHABITDEPTH = 128 lAlphaBitDepth成员有效
DDSD_BACKBUFFERCOUNT = 32    lBackBufferCount成员有效
DDSD_CAPS = 1 ddsCaps成员有效
DDSD_CKDESTBLT = 16384 ddckCKDestBlt成员有效
DDSD_CKDESTOVERLAY = 8192    ddckCKDestOverlay成员有效
DDSD_CKSRCBLT = 65536 ddckCKSrcBlt成员有效
DDSD_CKSRCOVERLAY = 32768 ddckCKSrcOverlay成员有效
DDSD_HEIGHT = 2 lHeight成员有效
DDSD_LINEARSIZE = 524288 不用
DDSD_LPSURFACE = 2048 lpSurface 成员有效
DDSD_MIPMAPCOUNT = 131072 lMipMapCount成员有效
DDSD_PITCH = 8 lPitch成员有效
DDSD_PIXELFORMAT = 4096 ddpfPixelFormat成员有效
DDSD_REFRESHRATE = 262144 l***Rate成员有效
DDSD_TEXTURESTAGE = 1048576 lTextureStage成员有效
DDSD_WIDTH = 4 lWidth成员有效
DDSD_ZBUFFERBITDEPTH = 64 lZBufferBitDepth成员有效
End Enum

CONST_DDWAITVBFLAGS

CONST_DDWAITVBFLAGS枚举用于通过DirectDraw7.WaitForVerticalBlank数方法的标志参指定为场逆程等待多长时间

Enum CONST_DDWAITVBFLAGS
DDWAITVB_BLOCKBEGIN = 1 当场逆程开始返回
DDWAITVB_BLOCKBEGINEVENT = 2 场逆程开始触发一个事件,此值现在不支持DirectDraw 7.0 SDK For VisualBasic程序员指南
DDWAITVB_BLOCKEND = 4 场逆程结束显示开始时返回
End Enum


群贤毕至

访客