DxLib是神马东西?看名字,似乎是M$的DirectX的官方库?NONONO,这货其实是日本人开发出来的一个库,封装了很多DirectX的函数,使开发更方便。这个库在日本那边很流行,很多同人游戏都是使用这个库开发的。这跟大陆不同,我们更喜欢使用FLASH开发小游戏。

题外话,那个无比恶搞的猫玛丽就是使用DxLib来开发的。

先从小日本那边下载DxLib,官方的下载地址貌似是这个:

http://homepage2.nifty.com/natupaji/DxLib/

假设我将其解压到D:/DxLib_GCC目录。

DxLib自带了各种IDE的配置教程,如VC,C#,Delphi等。

我这里实验使用的是Dev-C++。虽然工具比较旧,但是用来做小实验还不错。(下面简称dc)

配置教程在这里:

D:/DxLib_GCC/help/dxuse_gcc.html

看不懂日文没关系,里面有一部分英文和汉字,大约摸懂就行。

实际上我也不懂日文,看着猜的,嘿嘿!

我根据自己的理解,整理了一下配置过程:

一、dc基本设置

1.[Tools]->[Compiler Options]

2.选择Diectories项

3.选择Libraries项

4.将DxLib目录加到里面去

5.然后选择C++ Includes项

6.将DxLib目录同样加到里面去

7.点OK完成设置

二、项目

1.[file]->[new]->[project...]

2.选择[Windows Application]

3.Project Option的name输入,例如DrawPixel,点OK

4.选择项目保存在哪里

5.项目会自动打开main.cpp,将其保存

三、项目设定

1.[Project]->[Project Option]

2.选择Parameters项

3.在[C++ compiler]中加入:

-DDX_GCC_COMPILE

-DDX_NON_INLINE_ASM

4.在[Linker]中加入:

-lDxLib

-lDxUseCLib

-ljpeg

-lpng

-lzlib

-ltheora_static

-lvorbis_static

-lvorbisfile_static

-logg_static

-lbulletdynamics

-lbulletcollision

-lbulletmath

5.点OK完成设置

有一个不方便的地方就是每个项目都要设置一次Project属性。

这个教程下有一个简单的demo程序:

#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{if( DxLib_Init() == -1 ){return -1 ;}//若初始化失败则退出ChangeWindowMode(TRUE);//以窗口模式运行DrawPixel( 320 , 240 , 0xffff ) ;//画一个点WaitKey() ;//等待输入,pauseDxLib_End() ;//Dx结束return 0 ;
}

我不知道其他人能不能跑通,反正我是不行的,编译错误。

于是我修改了DxDirectX.h文件,将这句:

HRESULT  GetSeekingLongLong ( HRESULT (__stdcall D_IMediaSeeking::*pMethod)( LONGLONG * ), LONGLONG * pll );

改为:

HRESULT  GetSeekingLongLong ( HRESULT __stdcall D_IMediaSeeking::*pMethod ( LONGLONG * ), LONGLONG * pll );

居然就能编译通过了。运气不错!

运行结果就是一个黑色的窗口,正中间有一个小白点

DxLib做弹幕射击游戏(一)相关推荐

  1. DxLib做弹幕射击游戏(四)——敌机碰到墙壁

    代码如下: #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, ...

  2. DxLib做弹幕射击游戏(三)——敌机移动

    这次仍然是来直接看代码: #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevIn ...

  3. DxLib做弹幕射击游戏(二)——画一台敌机

    直接看代码: #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance ...

  4. Python也有做大型游戏的潜力?原来我们小看了Python,无所不能!!

    前言 在小编以前还没怎么接触很多编程语言时,都是认为游戏(端游,手游)都是用C做出来了!不知道大家有没有这么想过,反正我是这样的.后来慢慢接触多了,才知道并不是所有的都是这个样子的! 学习python ...

  5. c语言编程数独游戏,编程做数独游戏

    数独游戏非常好玩,可以训练玩家的逻辑推理能力.数独游戏的规则是: 1.在9×9的大九宫格内,已给定若干数字,其他宫位留白,玩家需要自己按照逻辑推敲出剩下的空格里是什么数字. 2.必须满足的条件:每一行 ...

  6. python做的大型游戏_Python有做大型游戏的潜力吗?

    由于最近我要考试忙不过来没修改回答,谢谢评论区大们的指正,我认识到的pygame库确实可以做游戏,但是pygame限制很多,特别是做大型游戏方面,3D还没有相关的优化方法等(3D游戏,pygame表示 ...

  7. 关于javaswing做的游戏的一点小总结x

    之前看了几个swing小游戏,也动手敲了下,比如俄罗斯方块,小鸟,"是男人就坚持30秒",射击游戏等,有点小总结: 所有swing做的游戏,无非是一种页面,一种可以与人交互,可以控 ...

  8. 十种做Flash游戏赚钱的方法

    如果你做Flash游戏纯粹是为了兴趣或者是好玩,那为什么不一边玩一边赚钱呢?我曾做过很多Flash游戏并因此赚了不少钱.下面我就要公开我总结的十条做Flash游戏赚钱的秘笈. 好了,现在我们切入正题, ...

  9. java做小游戏扫雷(附源码)

    下载解压即可玩:扫雷 项目代码下载:java代码 目录 图片 怎么自己也能做 代码细节 感受 全部代码 GameWin.java类 : MapBottom.java类: GameUtil.java类: ...

最新文章

  1. html中Marquee属性详解
  2. orcle10忘记密码
  3. 在职场中,长得漂亮真的有用吗?
  4. leetcode542. 01 矩阵(bfs/dp)
  5. idea javafx添加maven_JavaFX让UI更美观CSS样式
  6. Hbase常用数据库操作类
  7. 从软件project的角度写机器学习3——主要监督学习算法的project性分析
  8. 财务部门如何用OKR管理法?看最新OKR模板
  9. python 小海龟 教案_幼儿园小班健康活动《勇敢的小海龟》教案
  10. 五十个产品可靠性性能提高的方法详解
  11. 星际争霸2的AI环境搭建
  12. 主机名 域名 网站名 URL
  13. 最通俗易懂的nginx
  14. 关于cuda、cudnn环境配置
  15. 单片机、嵌入式错综复杂的关系分析
  16. php实现猫眼电影院选座思路,高仿猫眼电影选座(选票)模块
  17. 全球地名中英文对照表(Q-R)
  18. 201871010105-曹玉中《面向对象程序设计(java)》第四周学习总结
  19. EMC电磁兼容3:仪器受电磁辐射干扰怎么办?
  20. arcgis图斑尖角检查_ArcGIS消除零碎图斑(Eliminate)

热门文章

  1. VScode中使用svn常用简单操作
  2. php object 数组赋值,php object转数组示例
  3. 辐射能量降低裂变效应工程第二期
  4. 软件调试方法--小黄鸭调试法
  5. DPDK实战之skeleton(basicfwd)
  6. 青少年软件编程(C语言)等级考试试卷(一级)
  7. HUAWEI华为笔记本电脑荣耀MagicBook Pro i5(HBL-W19)HONOR原装出厂Windows10系统恢复原厂OEM系统1809
  8. JAVA实验1.7-5 以英里计的平均速度 (7 分)
  9. iOS 动画实战之Lottie动画
  10. Mac npm 设置淘宝镜像