C++游戏开发入门项目精选:制作经典游戏拳皇97

2018 年 6 月 11 日 算法与数据结构

对于80、90后来说,拳皇97一定不会陌生,这款经典的横版格斗游戏,是一代人的回忆,许多人接触它都是在街机上,而今天,小编要教大家制作PC版的拳皇97!看黑板,表演即将开始——

游戏运行效果呈现

好吧游戏界面和人物模型有点丑,不过这不是重点,重点是学习游戏开发的思路。


一、利用GDI绘制图形

GDI是windows与生俱来的图形设备接口(GraphicsDeviceInterface)的英文缩写,主要任务是负责系统与绘图程序之间的信息交换,处理所有Windows程序的图形和图像输出。


准备一张BMP格式的背景图片,创建一个窗体,在窗体上进行绘制,然后通过GetDC函数来获取窗体的设备环境DC

获取设备环境后,还需要在内存中创建一个设备环境,我们在内存中画图,画好以后,直接拷贝到窗体的设备环境上


二、关于动画的实现

拳皇吸引玩家的一定是那酣畅淋漓的打斗动作,我们知道用游戏引擎的骨骼动画是最常见的,不过跟3D的渲染不同,2D游戏是贴图的艺术。



例如上面的两个动画,通过一个数组把它们保存起来,然后依次播放。



♦运行效果


贴图基本有两种方式,一种采用定时器,一种则是利用消息循环,目前都是采用的第二种绘制方式(消息循环),也就是说游戏中的动画都是一帧一帧的帖上去的,就像放电影一样。



♦添加了技能运行效果图:


其实像拳皇97、地下城与勇士这类2D游戏是比较适合新手小白开发的,相比于3D游戏的骨骼动画,2D横版游戏的序列帧更简便。


在开发过程中,我们会用到C/C++语言、Win32窗口创建、消息机制、GDI三缓冲绘图原理等知识点。


●学习过程中你能学会:

1.使用API函数创建好Win32窗口。

2.将准备好的游戏素材加载到程序中。

3.使用GDI图形设备接口函数绘制地图与角色。

4.利用C/C++语法结合数据结构与算法算法处理游戏数据。

5.编写游戏逻辑。


●学习成效:

1.跳出控制台,在界面编程中去锻炼自己的逻辑思维能力。

2.了解windows程序设计的基本框架。

3.可尝试去开发各种界面化的程序,例如雷霆战机,俄罗斯方块,坦克大战等等。


一句RNG牛逼,不知刷爆了多少人的朋友圈,而LOL等六项电竞正式入选亚运会,更是刷新了我们对游戏的认知,在眼下全民娱乐的时代,游戏早已成为我们生活的一部分,游戏开发也是当下和未来绝对热门的行业。


怎么样?是不是也想尝试着自己做一款小游戏了呢?


那么最后送大家一个福利


免费C/C++技术交流群

进群领取拳皇97及更多项目学习资料

长按二维码识别

或添加Q群:335938634

不定期有Socket编程和Hook(钩子)编程等网络黑客技术、腾讯内部核心技术比如QQ截图系统、编写雷霆战机等经典游戏的免费知识分享课。

 

点击阅读原文,也可以参与哦

登录查看更多
0

相关内容

FPGA加速系统开发工具设计:综述与实践
专知会员服务
65+阅读 · 2020年6月24日
【经典书】数据结构与算法C++,第二版,738页pdf
专知会员服务
167+阅读 · 2020年3月27日
【经典书】Python计算机视觉编程,中文版,363页pdf
专知会员服务
139+阅读 · 2020年2月16日
【强化学习】深度强化学习初学者指南
专知会员服务
180+阅读 · 2019年12月14日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
社区分享 | Spark 玩转 TensorFlow 2.0
TensorFlow
15+阅读 · 2020年3月18日
渗透某德棋牌游戏
黑白之道
12+阅读 · 2019年5月17日
GitHub超2.7万星,最全Python入门算法来了
新智元
5+阅读 · 2019年4月28日
逆向 | C++ 加壳程序的编写思路
计算机与网络安全
9+阅读 · 2019年1月1日
做机器学习和AI必备的42个数学知识点
AI前线
9+阅读 · 2018年12月6日
Python 杠上 Java、C/C++,赢面有几成?
CSDN
6+阅读 · 2018年4月12日
机器学习各种熵:从入门到全面掌握
AI研习社
10+阅读 · 2018年3月22日
用Python制作3D动画
Python程序员
30+阅读 · 2018年1月17日
资源 | GitHub上的五大开源机器学习项目
机器之心
9+阅读 · 2017年11月9日
Question Generation by Transformers
Arxiv
5+阅读 · 2019年9月14日
Learning Implicit Fields for Generative Shape Modeling
Arxiv
10+阅读 · 2018年12月6日
Arxiv
3+阅读 · 2018年10月8日
Arxiv
8+阅读 · 2018年5月21日
VIP会员
相关VIP内容
FPGA加速系统开发工具设计:综述与实践
专知会员服务
65+阅读 · 2020年6月24日
【经典书】数据结构与算法C++,第二版,738页pdf
专知会员服务
167+阅读 · 2020年3月27日
【经典书】Python计算机视觉编程,中文版,363页pdf
专知会员服务
139+阅读 · 2020年2月16日
【强化学习】深度强化学习初学者指南
专知会员服务
180+阅读 · 2019年12月14日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
相关资讯
社区分享 | Spark 玩转 TensorFlow 2.0
TensorFlow
15+阅读 · 2020年3月18日
渗透某德棋牌游戏
黑白之道
12+阅读 · 2019年5月17日
GitHub超2.7万星,最全Python入门算法来了
新智元
5+阅读 · 2019年4月28日
逆向 | C++ 加壳程序的编写思路
计算机与网络安全
9+阅读 · 2019年1月1日
做机器学习和AI必备的42个数学知识点
AI前线
9+阅读 · 2018年12月6日
Python 杠上 Java、C/C++,赢面有几成?
CSDN
6+阅读 · 2018年4月12日
机器学习各种熵:从入门到全面掌握
AI研习社
10+阅读 · 2018年3月22日
用Python制作3D动画
Python程序员
30+阅读 · 2018年1月17日
资源 | GitHub上的五大开源机器学习项目
机器之心
9+阅读 · 2017年11月9日
Top
微信扫码咨询专知VIP会员