65.9K
CodeProject 正在变化。 阅读更多。
Home

DirectX 9 中的 2D Blit

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.64/5 (13投票s)

2005年4月20日

MIT

1分钟阅读

viewsIcon

83143

downloadIcon

2252

介绍了如何在 DirectX 9 中进行 2D 复制,以及在各种表面格式之间进行直接表面访问(使用颜色转换)。

Sample Image

引言

提供的示例代码说明了如何在 DirectX 9 中进行 2D 复制。从 DirectX 8 开始,微软从 DirectX 中移除了所有 2D 代码。他们给那些想要使用 2D 功能的人的建议是,当他们想要使用 2D 函数时,应该使用 DirectX 7。当然,如果你需要 DirectX 8 和 DirectX 9 中提供的功能,这并不是一个选择。

因此,在我参与 DirectX 8 技术 Beta 测试团队期间,我决定编写一些示例代码,展示如何直接访问 D3D 表面并在其上进行 2D 复制。你将需要自己编写所有的 2D 函数,但以我的代码为起点,这将很容易做到。此外,我的代码还说明了如何在 DirectX 8 和 9 中引入的各种表面格式之间进行转换。

当然,如果不需要直接访问表面,使用标准的 D3D 复制例程会更好,因为它们是硬件加速的,因此比我代码中的软件 2D 复制更快。

使用代码

下载的 ZIP 文件中提供了一个示例项目,展示了如何使用提供的代码。请参阅 ZIP 文件中也包含的 readme.txt 文件,以获取更多信息。如果您有任何问题,请随时给我发电子邮件。有关更新或其他代码示例,请访问我的主页

© . All rights reserved.