Direct3D DDI

Microsoft Direct3D 设备驱动程序接口 (DDI) 是一种图形接口,允许供应商为 Direct3D 提供硬件加速。 接口非常灵活,允许供应商根据硬件功能提供 Direct3D 加速。 驱动程序编写器将 Direct3D DDI 作为显示驱动程序的组成部分实现。

本部分介绍 Direct3D DDI,并提供 Direct3D 驱动程序编写器的实现准则。 假定读者熟悉 Direct3D 和 Microsoft DirectDraw API,并且读者已牢牢掌握 Windows 2000 显示驱动程序模型,包括 DirectDraw DDI。

所有适用于 Windows 2000 及更高版本的 Direct3D 驱动程序都必须符合 Microsoft DirectX 7.0 或更高版本的 Direct3D 驱动程序模型。 Microsoft Windows XP 支持 DirectX 8.0 驱动程序模型。

为 Microsoft Windows 2000 及更高版本创建 Microsoft Direct3D 驱动程序的驱动程序编写者应使用以下头文件:

d3dhal.h
包含由驱动程序实现的回调的原型和驱动程序级结构的定义。 D3DHAL_DP2OPERATION枚举类型在此文件中定义。 此标头包含在 winddi.h 中,它必须包含在所有 Windows 2000 及更高版本的显示驱动程序中。

d3d9types.h 包含应用程序和驱动程序使用的 Direct3D 类型定义。 除了D3DHAL_DP2OPERATION,所有其他 Direct3D 枚举类型都在此标头中定义。

d3dcaps.h 包含描述 Direct3D 驱动程序各方面功能的结构和定义。

ddrawint.h
此头文件包含在 winddi.h 中,是开发显示驱动程序的 Microsoft DirectDraw 部分所必需的。

所有这些头文件都随 Windows 驱动程序工具包 (WDK) 一起提供。 以前的驱动程序开发工具包 (DDK) 还在 Perm3 视频显示目录中提供 Direct3D 驱动程序的示例代码。

Microsoft Windows 驱动程序工具包 (WDK) 不包含 3Dlabs Permedia2 (3dlabs.htm) 和 3Dlabs Permedia3 (Perm3.htm ) 示例显示驱动程序。 可以从 Windows Server 2003 SP1 DDK 获取这些示例驱动程序,可以从 WDHC 网站的 DDK - Windows 驱动程序开发工具包页下载这些驱动程序。

Direct3D 接口的 SDK 相关方面的主要参考是Microsoft Windows SDK文档。 由 Addison-Wesley 出版的 Foley、van Dam、Feiner 和 Hughes 的《计算机图形:原则与实践》是一个有用的通用图形参考。