http://blog.csdn.net/rabbit729/article/details/7198528
HRESULT CheckDeviceType(
[in] UINT Adapter,
[in] D3DDEVTYPE DeviceType,
[in] D3DFORMAT DisplayFormat,
[in] D3DFORMAT BackBufferFormat,
[in] BOOL Windowed
)
【功能描述】该函数用来检测当前指定的的硬件加速类型是否可用。
【参数描述】
Adapter: 适配器编号
DeviceType: 当前使用的硬件加速模式,可以是如下几种
typedef enum D3DDEVTYPE {
D3DDEVTYPE_HAL = 1,
D3DDEVTYPE_NULLREF = 4,
D3DDEVTYPE_REF = 2,
D3DDEVTYPE_SW = 3,
D3DDEVTYPE_FORCE_DWORD = 0xffffffff
} D3DDEVTYPE, *LPD3DDEVTYPE;
DisplayFormat:
当前适配器的显示格式,注意不是BackBufferFormat的格式,这个参数可以通过GetAdapterDisplayMode()函数得到。
BackBufferFormat: BackBuffer格式,对于窗口模式的应用来说,BackBuffer的格式可以和DisplayFormat不一样,前提是硬件支持相应的格式转换,关于是否支持格式转换可以通过CheckDeviceFormatConversion()该接口来判断。对于全屏程序来说BackBuffer的格式必须和DisplayFromat格式一样,全屏应用程序不支持格式转换。
Windowed: 是否为窗口程序
HRESULT GetDeviceCaps(
[in] UINT Adapter,
[in] D3DDEVTYPE DeviceType,
[out] D3DCAPS9 *pCaps
)
【功能描述】该函数用来获取指定设备的规格,通过PCaps的返回值可以查看设备支持情况,具体参数描述参看帮助文档。
HRESULT CheckDeviceFormat(
[in] UINT Adapter,
[in] D3DDEVTYPE DeviceType,
[in] D3DFORMAT AdapterFormat,
[in] DWORD Usage,
[in] D3DRESOURCETYPE RType,
[in] D3DFORMAT CheckFormat
)
【功能描述】该函数用来判定指定用途或者格式的表面是否可用。
【参数描述】
Adapter
:
适配器编号
DeviceType
:
设备类型
AdapterFormat
:
Display Mode
的格式,而不是BackBuffer的格式,这个参数最好通过
GetAdapterDisplayMode()接口获得。
Usage: 表面用途
RType: 资源类型,如下几种:
typedef enum D3DRESOURCETYPE {
D3DRTYPE_SURFACE = 1,
D3DRTYPE_VOLUME = 2,
D3DRTYPE_TEXTURE = 3,
D3DRTYPE_VOLUMETEXTURE = 4,
D3DRTYPE_CubeTexture = 5,
D3DRTYPE_VERTEXBUFFER = 6,
D3DRTYPE_INDEXBUFFER = 7,
D3DRTYPE_FORCE_DWORD = 0x7fffffff
} D3DRESOURCETYPE, *LPD3DRESOURCETYPE;
CheckFormat
:
待检测格式