学习Eaxy X图形库后我的成果:

花了一周时间做出并完善了Flappy Bird,目前功能如下:

1. 背景的显示

2. 加入小鸟image

3. 小鸟自由下落,按空格键/鼠标右键后上升

4. 加入静态的障碍物

5. 障碍物向左移动

6. 判断碰撞

7. 障碍物移动出左边界后,在右边重新出现

8. 记分模块

9. 加入开始界面、结束界面

10. 加入背景音乐

11.加入最高分统计(待完成)

途中用到的lib、dll、头文件如下:

1.#include <graphics.h>

2.#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

#include <time.h>

#include <windows.h>

#include "mmsystem.h"

winmm.lib

成品 Flappy bird 截图如下:

不过也有瑕疵 ,柱子左移偏慢,利用putimage会造成明显的位移效果,以后有空再修改

项目相关代码放在了我的 github 上,有兴趣的可以 clone 到 Windows 的 D盘下运行。

  https://github.com/bw98/FlappyBird

通过学习Eaxy X图形库一周左右,可以做出如下程序

1.国际象棋棋盘绘制

2.弹球(七彩渐变,且遇屏幕反弹,反弹方向随机)

3.时钟(精确到秒,准备完善程序,画上刻度)

运用EasyX图形库,利用图形素材做一些简单的游戏,给C语言学习增加一些乐趣。

下面贴干货链接:

EasyX安装包下载链接:
下载 -- EasyX Library for C++
怎样安装 EasyX? -- EasyX Library for C++
怎样使用 EasyX?(Visual C++ 6.0) -- EasyX Library for C++
怎样使用 EasyX?(Visual C++ 2008) -- EasyX Library for C++


官网还提供了一套非常好的入门教程,大家可以自学:

VC绘图/游戏简易教程--前言 -- EasyX Library for C++

对应的目录:

前言

1:创建新项目

2:简单绘图,学习单步执行

3:熟悉更多的绘图语句

4:结合流程控制语句来绘图

5:数学知识在绘图中的运用

6:实现简单动画

7:捕获按键,实现动画的简单控制

8:用函数简化相同图案的制作

9:绘图中的位运算

10:用鼠标控制绘图/游戏程序

11:随机函数

12:数组

13getimage/putimage/loadimag/saveimage/ IMAGE的用法

14:通过位运算实现颜色的分离与处理

15:窗体句柄(Windows编程入门)

16:设备上下文句柄(Windows编程入门2

另外推荐关注河海大学C语言老师,童晶老师,非常严谨踏实、致力于入门教学的老师,比我渣邮的本科老师在精力上投入真的是不能比。

他的账户:

童晶 - 知乎

他在知乎有专栏:

做游戏,学编程(C语言) 2016大一上同学开发的部分游戏效果 - 知乎专栏

正在学习中,望共勉:-)

C图形库Easyx的使用的更多相关文章

  1. 用C语言画一个心

    用C语言图形库画一个心 --环家伟 这次我教大家用代码画一个心,这样你们就可以送给你们的女(男)朋友了.没找到对象的也可以用来表白啊. 1.首先,我去百度找了心形线的函数,如下: 2.  联系高中的数 ...

  2. 6.C语言迷宫程序界面版

    写迷宫程序首先需要安装图形库easyX 安装地址链接:https://pan.baidu.com/s/1qZwFn3m 密码:ozge 项目截图: //左上角是七点,右下角是终点,蓝色表示的是走过的路 ...

  3. easyx图形库做贪吃蛇游戏

    编程总是对着一个黑窗口,可以说是非常乏味了,于是喵喵就翻出来了以前用easyx图形库做图形界面的贪吃蛇游戏. 不过大家只是当做提高编程的乐趣来学习吧,想进一步做的话可以学习QT,还有其他的框架. 这是 ...

  4. 贪吃蛇—C—基于easyx图形库(上):基本控制函数实现 画图程序

    自从学了c语言,就一直想做个游戏,今天将之付之行动,第一次写的特别烂,各种bug:就不贴了.今天网上看了好几个贪吃蛇,重新写了一次,做出来的效果还可以. p.s.  easyx图形库是为了方便图形学教 ...

  5. 校园导游系统(C++实现,VC6.0编译,使用EasyX图形库)

    运行效果: 说明: 由于当年还不会使用多线程,所以很多获取用户点击的地方都是使用循环实现的...CPU占用率会比较高. 代码: //校园导游系统.cpp 1 #include <graphics ...

  6. 贪吃蛇(C++实现,VC6.0编译,使用了EasyX图形库)

    程序效果: 代码: //main.cpp 1 #include <iostream> #include<fstream> #include <graphics.h> ...

  7. 贪吃蛇—C—基于easyx图形库(下):从画图程序到贪吃蛇【自带穿墙术】

    上节我们用方向控制函数写了个小画图程序,它虽然简单好玩,但我们不应该止步于此.革命尚未成功,同志还需努力. 开始撸代码之前,我们先理清一下思路.和前面画图程序不同,贪吃蛇可以有很多节,可以用一个足够大 ...

  8. C语言图形库简单对比及EGE库的安装小手册

    近期在琢磨C语言的图形库,发现主要有如下几种选择: Turbo C 的graphics库 SDL EasyX EGE 1. 普遍认为Graphics库太老了,而且TurboC本身使用比较麻烦,网上一边 ...

  9. C++经典绘图工具EasyX

    EasyX简介 EasyX 在学习C语言时,很多同学抱怨说C只能写最简单的Demo程序,通过printf在屏幕上打印字符来验证代码.这样的编程很枯燥,一点没觉得自己在设计软件. EasyX是针对C++ ...

随机推荐

  1. js获取url地址栏参数

    前端开发中经常会遇到需要获取url地址栏参数问题 方法如下: function getQueryStringByName(name){ var src = "www.baidu.com?na ...

  2. EDI数据导入的注意事项&常见异常处理

    EXCEL表格注意事项: •      编码是0开头的,格式必须是文本,否则前面请加字母: •      注意全角半角,中文标点英文标点: •      编号文字类开头和结尾不要有空格,姓名中间也不要 ...

  3. androidStudio 中 gradle 常用功能

    1. gradle 使用 svn 当前版本信息. def getSvnRevision() { new ByteArrayOutputStream().withStream { os -> de ...

  4. MVC过滤器简单理解

    之前对于MVC过滤器的理解一直处于很模糊的状态,就在网上找了一些很简单的案例做了一下学习,就找了一个比较容易理解的demo分享给大家. 新建一个MVC4项目,可以在global.asax文件中看到如下 ...

  5. php数据分页显示基础

    一:分页原理: 所谓分页显示,也就是将数据库中的结果集认为的分成一段一段的来显示,需要两个初始的参数: 每页多少条记录 ($PageSize)? 当前是第几页($CurrentPageID)? 还有其 ...

  6. ##6.1 Neutron控制节点-- openstack pike

    ##6.1 Neutron控制节点 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ##6.1 Neutron控制节 ...

  7. Linux下如何彻底删除MySQL

    1.查找以前是否装有mysql 命令:rpm -qa|grep -i mysql可以看到如下图的所示: 说明之前安装了:MySQL-client-5.5.25a-1.rhel5MySQL-server ...

  8. phpcms网站搬家 至 服务器 完整并且详细过程

    上传服务器空间后,才会通过搜索域名进行网页访问. 上传的过程肯定会有很多东西要修改,例如数据库怎么上传.路径怎么修改等..... 这就让大家看下,自己不断尝试后的完整搬家步骤!!! 一.上传服务器 ( ...

  9. javascript算法题判断输入年份是否是闰年

    用户输入一个年份,判断这个年是否是闰年.判断闰年条件:① 非整百年数除以4,无余为闰,有余不闰:② 整百年数除以400,无余为闰,有余不闰.比如:2000年,整百数年,就要用②公式,除以400,无余数 ...

  10. Netty之粘包分包

    粘包现象 客户端在一个for循环内连续发送1000个hello给Netty服务器端, Socket socket = new Socket("127.0.0.1", 10101); ...