C图形库Easyx的使用
学习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++
官网还提供了一套非常好的入门教程,大家可以自学:
对应的目录:
–前言
另外推荐关注河海大学C语言老师,童晶老师,非常严谨踏实、致力于入门教学的老师,比我渣邮的本科老师在精力上投入真的是不能比。
他的账户:
他在知乎有专栏:
做游戏,学编程(C语言) 2016大一上同学开发的部分游戏效果 - 知乎专栏
正在学习中,望共勉:-)
C图形库Easyx的使用的更多相关文章
- 用C语言画一个心
用C语言图形库画一个心 --环家伟 这次我教大家用代码画一个心,这样你们就可以送给你们的女(男)朋友了.没找到对象的也可以用来表白啊. 1.首先,我去百度找了心形线的函数,如下: 2. 联系高中的数 ...
- 6.C语言迷宫程序界面版
写迷宫程序首先需要安装图形库easyX 安装地址链接:https://pan.baidu.com/s/1qZwFn3m 密码:ozge 项目截图: //左上角是七点,右下角是终点,蓝色表示的是走过的路 ...
- easyx图形库做贪吃蛇游戏
编程总是对着一个黑窗口,可以说是非常乏味了,于是喵喵就翻出来了以前用easyx图形库做图形界面的贪吃蛇游戏. 不过大家只是当做提高编程的乐趣来学习吧,想进一步做的话可以学习QT,还有其他的框架. 这是 ...
- 贪吃蛇—C—基于easyx图形库(上):基本控制函数实现 画图程序
自从学了c语言,就一直想做个游戏,今天将之付之行动,第一次写的特别烂,各种bug:就不贴了.今天网上看了好几个贪吃蛇,重新写了一次,做出来的效果还可以. p.s. easyx图形库是为了方便图形学教 ...
- 校园导游系统(C++实现,VC6.0编译,使用EasyX图形库)
运行效果: 说明: 由于当年还不会使用多线程,所以很多获取用户点击的地方都是使用循环实现的...CPU占用率会比较高. 代码: //校园导游系统.cpp 1 #include <graphics ...
- 贪吃蛇(C++实现,VC6.0编译,使用了EasyX图形库)
程序效果: 代码: //main.cpp 1 #include <iostream> #include<fstream> #include <graphics.h> ...
- 贪吃蛇—C—基于easyx图形库(下):从画图程序到贪吃蛇【自带穿墙术】
上节我们用方向控制函数写了个小画图程序,它虽然简单好玩,但我们不应该止步于此.革命尚未成功,同志还需努力. 开始撸代码之前,我们先理清一下思路.和前面画图程序不同,贪吃蛇可以有很多节,可以用一个足够大 ...
- C语言图形库简单对比及EGE库的安装小手册
近期在琢磨C语言的图形库,发现主要有如下几种选择: Turbo C 的graphics库 SDL EasyX EGE 1. 普遍认为Graphics库太老了,而且TurboC本身使用比较麻烦,网上一边 ...
- C++经典绘图工具EasyX
EasyX简介 EasyX 在学习C语言时,很多同学抱怨说C只能写最简单的Demo程序,通过printf在屏幕上打印字符来验证代码.这样的编程很枯燥,一点没觉得自己在设计软件. EasyX是针对C++ ...
随机推荐
- P1457 城堡 The Castle
轻度中毒 原题 :The Castle 以下为题解部分:明明辣么简单的一道题,硬是搞了1.5h,WTF?以下列出本题的一些要点. 搜索(DFS)嘛,染色嘛,统计大小嘛,很容易想,也很更易处理. 接下来 ...
- [最短路]P1119 灾后重建
题目背景 B地区在地震过后,所有村庄都造成了一定的损毁,而这场地震却没对公路造成什么影响.但是在村庄重建好之前,所有与未重建完成的村庄的公路均无法通车.换句话说,只有连接着两个重建完成的村庄的公路才能 ...
- Microsoft SQL Server 2008 R2数据库备份 - 人工备份
业务介绍 数据库人工备份是指由相关管理人员通过主动的手工方式备份数据库文件.在一些特殊的时间节点,如重要资料的录入完成.软硬件环境更新前等需要特别关注数据库安全的时候,一定要进行数据库的人工备份,以保 ...
- JavaWeb框架SSH_Struts2_(三)
1. Struts2的拦截器(使用拦截器实现权限控制) 拦截器简介 拦截器概述 拦截器工作原理 拦截器的配置 Struts2的内建拦截器 内建拦截器的介绍 内建拦截器的配置 自定义拦截器 实现自定义拦 ...
- Python——正则表达式
此篇文章结合小甲鱼的笔记和视频整理. 1 编译 Python 通过 re 模块为正则表达式引擎提供一个接口,同时允许你将正则表达式编译成模式对象,并用它们来进行匹配. 正则表达式被编译为模式对象,该对 ...
- F - Capture
F - Capture 题链 题意 给你两种颜色的物品,有n组,每组有第一种颜色有w个,第二种为d个,每组必须选一种,求最后第一种颜色占的比值不低于K的最少需要选第一种的组数. 思路 首先没组都选第一 ...
- 认识 var、let、const
我们通过声明.初始化.值的可变性.作用域.变量提升以及在工作中如何使用等多个方面来详细了解var.let.const等关键字功能与特点. 声明 var,let:可以先声明,后赋值(初始化),默认值是 ...
- 拆分字符and读取properties文件
在方法里面建立properties对象 Properties pps = new Properties(); 调用.load()方法 pps.load(new FileInputStream(&quo ...
- centos 自带mysql卸载时出现无法卸载情况
[dianyi@localhost ~]$ rpm -qa|grep mysql mysql-libs-5.1.52-1.el6_0.1.x86_64 [dianyi@localhost ~]$ rp ...
- phython廖雪峰
这是小白的Python新手教程,具有如下特点: 中文,免费,零起点,完整示例,基于最新的Python 3版本. Python是一种计算机程序设计语言.你可能已经听说过很多种流行的编程语言,比如非常难学 ...