(测试是否能发出来)
0. 引言
DxLib 是一个日本人开发的库,光看名字可能以为这是一个辅助使用 DirectX 的库,但它实际上涵盖了许多方面的内容,如图像、声音、归档文件、网络、模型等,功能十分全面,适合新手使用。其官网地址为 https://dxlib.xsrv.jp/ 。据官网介绍,其支持的平台也很多,例如 Windows、Android 等。
1. 下载 DxLib
点击官网的 "DXライブラリのダウンロード",转到下载页面。这里可以下载对应平台用的库文件,如使用 VS 就选择 VisualStudio,MinGW 就使用 Gnu C++。这篇文章会以 MinGW 举例。下载后,将解压的文件放到一个地方,便于日后使用。(注:在 ./help/dxfunc.html 中,可以找到 DxLib 的函数帮助手册,不过是全日文的,可以借助页面翻译工具阅读。)
2. 配置 DxLib
在 "プロジェクトに追加すべきファイル_GCC(MinGW)用" 中,可以看到一些以版本号为名的文件夹。这里我用的是 gcc 8.2.0,那么就将 "8_2_0" 这个文件夹提出来使用。为了方便日后编译,可以事先写一个 compile.bat 批处理(Makefile 也可),将配置信息写在里面。参考内容如下:(DxLibPath 是 DxLib 库的路径)
@璐村惂鐢ㄦ埛_000076K馃惥 off
for /F "usebackq delims=" %%A in (`echo %1 ^| sed 's/.cpp/.exe/'`) do g++ -IDxLibPath %1 -o %%A -mwindows -LDxLibPath -lDxLib -lDxUseCLib -lvorbis_static -lvorbisfile_static -logg_static -lopusfile -lopus -ljpeg -lpng -lzlib -ltheora_static -lbulletdynamics -lbulletcollision -lbulletmath -lcelt -ltiff -lDxDrawFunc -lsilk_common
pause
3. 编写第一个 DxLib 程序
编写一个程序是从头文件开始的,这里我们需要 #include <DxLib.h>,以便使用 DxLib 的函数。这里提示一下,DxLib 类似于 easyx,是一个 C++ 库,但提供的是 C 风格接口,因此文件后缀名需要是 .cpp。这里我预先准备了一段代码,其中简单地使用了几个函数:
#include <DxLib.h>
int main(void) {
SetOutApplicationLogValidFlag(FALSE); // 禁止输出日志到 Log.txt
ChangeWindowMode(TRUE); // 改变为窗口模式
if (DxLib_Init() == -1) // 初始化 DxLib
return -1;
SetMainWindowText("Hello DxLib!"); // 设置窗口标题
printfDx("Hello %s!\n", "DxLib"); // 在 DxLib 屏幕上打印 Hello DxLib!
DrawPixel(320, 240, GetColor(255, 0, 0)); // 在屏幕中央画一个红色点
WaitKey(); // 等待按键输入
DxLib_End(); // 反初始化 DxLib
}
在命令提示符里执行 compile.bat <文件名>.cpp,会生成一个对应名字的 exe 文件。打开它,你应当能看到程序窗口里的 Hello DxLib! 与屏幕中央的一个红点。
0. 引言
DxLib 是一个日本人开发的库,光看名字可能以为这是一个辅助使用 DirectX 的库,但它实际上涵盖了许多方面的内容,如图像、声音、归档文件、网络、模型等,功能十分全面,适合新手使用。其官网地址为 https://dxlib.xsrv.jp/ 。据官网介绍,其支持的平台也很多,例如 Windows、Android 等。
1. 下载 DxLib
点击官网的 "DXライブラリのダウンロード",转到下载页面。这里可以下载对应平台用的库文件,如使用 VS 就选择 VisualStudio,MinGW 就使用 Gnu C++。这篇文章会以 MinGW 举例。下载后,将解压的文件放到一个地方,便于日后使用。(注:在 ./help/dxfunc.html 中,可以找到 DxLib 的函数帮助手册,不过是全日文的,可以借助页面翻译工具阅读。)
2. 配置 DxLib
在 "プロジェクトに追加すべきファイル_GCC(MinGW)用" 中,可以看到一些以版本号为名的文件夹。这里我用的是 gcc 8.2.0,那么就将 "8_2_0" 这个文件夹提出来使用。为了方便日后编译,可以事先写一个 compile.bat 批处理(Makefile 也可),将配置信息写在里面。参考内容如下:(DxLibPath 是 DxLib 库的路径)
@璐村惂鐢ㄦ埛_000076K馃惥 off
for /F "usebackq delims=" %%A in (`echo %1 ^| sed 's/.cpp/.exe/'`) do g++ -IDxLibPath %1 -o %%A -mwindows -LDxLibPath -lDxLib -lDxUseCLib -lvorbis_static -lvorbisfile_static -logg_static -lopusfile -lopus -ljpeg -lpng -lzlib -ltheora_static -lbulletdynamics -lbulletcollision -lbulletmath -lcelt -ltiff -lDxDrawFunc -lsilk_common
pause
3. 编写第一个 DxLib 程序
编写一个程序是从头文件开始的,这里我们需要 #include <DxLib.h>,以便使用 DxLib 的函数。这里提示一下,DxLib 类似于 easyx,是一个 C++ 库,但提供的是 C 风格接口,因此文件后缀名需要是 .cpp。这里我预先准备了一段代码,其中简单地使用了几个函数:
#include <DxLib.h>
int main(void) {
SetOutApplicationLogValidFlag(FALSE); // 禁止输出日志到 Log.txt
ChangeWindowMode(TRUE); // 改变为窗口模式
if (DxLib_Init() == -1) // 初始化 DxLib
return -1;
SetMainWindowText("Hello DxLib!"); // 设置窗口标题
printfDx("Hello %s!\n", "DxLib"); // 在 DxLib 屏幕上打印 Hello DxLib!
DrawPixel(320, 240, GetColor(255, 0, 0)); // 在屏幕中央画一个红色点
WaitKey(); // 等待按键输入
DxLib_End(); // 反初始化 DxLib
}
在命令提示符里执行 compile.bat <文件名>.cpp,会生成一个对应名字的 exe 文件。打开它,你应当能看到程序窗口里的 Hello DxLib! 与屏幕中央的一个红点。