2024年了,Direct12年代,不建议使用Direct9。因为有些功能,函数已经废弃。
这里只是展示devc++如何使用add as library 功能,和Direct9的素材集合。没啥用。差不多当一个赛博博物馆吧。
官方Direct9文档
Direct3D 9 编程指南 - Win32 apps | Microsoft Learn
其他中文翻译,但是10年前了。
DirectX 9.0 C++ 教程 第一个程序_directx代码-CSDN博客
本文案开发是 devc++5.11 捡现成的用。
Direct9版本支持:NVIDIA RTX3060及以下。 windows11及以下。
有些老window需要自己装Directx,或者是打游戏莫名其妙装了的,这一步就跳过。
devc++版本:5.11
DirectX版本:9
流程如图
选择选项卡multimedia 多媒体库,选择C++语言,否则有函数链接不上,报错Direct9函数,截图只选错了语言。underdefine reference xxxxxxx
选GCC编译器选32bit
然后开始链接库函数
注意到开头注释
// make sure to link to the libraries libd3d9.a and libd3dx9_43.a
// - copy the two files from the lib directory of your compiler
// - open project options >> parameters and add both using "Add Library or Object"
注意,是 libd3d9.a。 不是 libdx9.a 也不是 libd3dx9.a
这个 libd3x9_43.a 也是 。这俩选上。
打开项目属性 Project Option
选择win32GUI
然后再选择parameter,找到路径如此
选择libd3d9.a 和libd3dx9_43.a这俩差着一个屏幕大小的距离。
点击打开
点OK。
然后链接c++11库
编译器选项里选
compier linker都选上, 输入 -std=c++11即可
点击ok,
然后编译运行。
得到旋转的两个三角形,但是不如其他版本的devc++的opengl给的旋转壶震感。
此时切换独立显卡模式,可以发现运行程序,显卡使用率就明显上升。
如此Direct9捡现成开发完毕。