[MFC] MFC 仿 Flappy bird PC桌面版
前些日子发现朋友都在玩flappy bird这款虐心的小游戏,网上也炒得很火,于是俺也想下一个玩玩。可是矮穷挫至今还没配上高端的智能机,于是去网上搜了一下,想找个PC桌面版的也玩一下,可是找了半天,都是挂名是PC版,可是实质是让你下一个安卓模拟器(这家伙可不小,而且跑起来挺占内存的,最坑的是偶尔浏览器自己打开!)。正巧自己对MFC知道一点,所以萌发了自己仿一个的念头。
这样经过近连续5天的奋战(每天上完课就冲进寝室,打开pc不断调试构思,>_< 水平有点底,做起来略坑!各种问题呀!),从如何把bmp图片做透明处理,到柱子的CList结构,再到鸟飞翔物理过程的模拟,本来以为接近尾声啦,可是发现有些帧动画之间的时间间隔处理的不是很好,所以只能破坏原来优美的switch下各个元素logic()的结构,在有些地方插入一个Time时间计数器来控制时间间隔(下次再写的时候我觉得要首先全局架构一下,然后再逐个实现!),然后在周二下午+晚上终于把全部效果实现。
本来想一气呵成给它配个音乐,可是看看表已经3点多啦(不得不睡,星期三是全天满课呀!),于是星期三一天没闲着终于晚上8:10上完课直奔宿舍,本来以为2个小时能搞定的配音,结果竟又做到了2:00多(主要因为刚开始采用的playmusic函数不能有混音效果,也就是每次鸟飞翔的声音总是会打断分数增加的声音,感觉很不好!于是查了下有啥方法,结果发现必须用Direct-X才行,看着这个直冒汗呀!可值的高兴的是我还发现有人用send...String()和playmusic()分别播放冲突音频就可以啦,但是问题又出现啦:第一个函数不能加载资源问件,而我又想把所有的资源都封在exe里,怎么办呢?放弃 or Direct-X?最后甚至想到了用多线程的思路!结果试了几次发现不行,就继续搜索方法!终于在百度文库里的一篇简单的音乐播放软件源码提醒了我!最后我首先从资源文件提取音频,然后放在临时文件,再把临时文件传进去,终于大功告成!!!)
下面是它的几个截图:
哈哈,怎么样还行吧!这有他的链接,大家可以玩一下看看(如果有什么不足的地方请多多批评 >m< !):http://www.cnblogs.com/zjutlitao/admin/Files.aspx
[MFC] MFC 仿 Flappy bird PC桌面版的更多相关文章
- [MFC] 高仿Flappy bird 桌面版
这是今年年初做的东西,一直没有时间整理,现在拿出来分享下~ 目录 开发背景 开发语言及运行环境 效果展示 游戏框架说明 游戏状态及逻辑说明 经典算法说明 重量级问题解决 开发感想 一.开发背景: fl ...
- 通通制作Html5小游戏——第二弹(仿flappy bird像素鸟)
亲爱的博友们,我又回来啦~因为我们技术宅的思想只有技术宅懂得,好不容易写了点好玩的东西发QQ空间,结果只有11的UV,0回复....10分钟ps一个女神的素描效果发QQ空间朋友圈,一大堆回复加赞,作为 ...
- 飞翔的圆(Flappy Bird)游戏源码
这个源码是一个不错的休闲类的游戏源码,飞翔的圆(Flappy Bird)游戏源码V1.0,本项目是一个仿Flappy Bird的小游戏,只不过是把Flappy Bird里面的鸟替换成了简单的圆.感兴趣 ...
- 使用Hilo.JS快速开发Flappy Bird
http://hiloteam.github.io/tutorial/flappybird.html#_9 Flappy Bird是一款前不久风靡世界的休闲小游戏.虽然它难度超高,但是游戏本身却非常简 ...
- canvas 制作flappy bird(像素小鸟)全流程
flappy bird制作全流程: 一.前言 像素小鸟这个简单的游戏于2014年在网络上爆红,游戏上线一段时间内appleStore上的下载量一度达到5000万次,风靡一时, 近年来移动web的普及为 ...
- 自己动手写游戏:Flappy Bird
START:最近闲来无事,看了看一下<C#开发Flappy Bird游戏>的教程,自己也试着做了一下,实现了一个超级简单版(十分简陋)的Flappy Bird,使用的语言是C#,技术采用了 ...
- C语言版flappy bird黑白框游戏
在此记录下本人在大一暑假,2014.6~8这段时间复习C语言,随手编的一个模仿之前很火热的小游戏----flappy bird.代码bug基本被我找光了,如果有哪位兄弟找到其他的就帮我留言下吧,谢谢了 ...
- 闲扯游戏编程之html5篇--山寨版《flappy bird》源码
新年新气象,最近事情不多,继续闲暇学习记点随笔,欢迎拍砖.之前的〈简单游戏学编程语言python篇〉写的比较幼稚和粗糙,且告一段落.开启新的一篇关于javascript+html5的从零开始的学习.仍 ...
- 【Unity3D基础教程】给初学者看的Unity教程(四):通过制作Flappy Bird了解Native 2D中的RigidBody2D和Collider2D
作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点[推荐].谢谢! 引子 在第一篇文章[Unity3D基础教程] ...
随机推荐
- 关于YUV格式数据
(1) YUV格式有两大类:planar和packed.对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V.对于packed的YUV格式,每个像素点 ...
- CSS3常用选择器(二)
本文继续介绍css3新增的选择器. 1.选择器 first-child.last-child.nth-child 和 nth-last-child 利用这几个选择器能够针对一个父元素中的第一个子元素. ...
- c++学习笔记——字面值常量类
字面值常量类:数据成员都是字面值类型的聚合类是字面值常量类.如果一个类不是聚合类,但是它符合一下要求,则它也是个字面值常量类: 1.数据成员都必须是字面值类型. 2.类必须至少含有一个constexp ...
- css兼容tooltip提示框方法
最终效果图: 基本原理 先设定一个背景色的普通div盒子,然后使用上篇post得到的三角型图标,把div盒子设置为相对定位模式,三角型图标设置为绝对定位,位置相对于div盒子,调整到合适的位置.这样就 ...
- MS sql server 基础知识回顾(二)-表连接和子查询
五.表连接 当数据表中存在许多重复的冗余信息时,就要考虑将这些信息建在另一张新表中,在新表中为原表设置好外键,在进行数据查询的时候,就要使用到连接了,表连接就好像两根线,线的两端分别连接两张表的不同字 ...
- UBUNTU9.10下安装TFTP学习笔记一(arm学习SEED-138板子)
擦,刚刚写的没保存都丢了,郁闷中~~~~ 简单重写 1什么是TFTP .安装TFTP(TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的 ...
- (转载)IOS中UIScrollView的属性和委托方法
http://www.jizhishusheng.com/?p=453 ---- 以下内容来自 UIScrollView 类负责所有基于 UIKit 的滚动操作一.创建 1. CGRect bou ...
- LeetCode.4 两个有序数组的中位数问题
这道题是那种典型的有显而易见的解法, 但是想要达到较优的时间复杂度的话就不是这么好做的题目. 我来说说我自己的思考过程 : 首先最先想到的是 O(m + n) 的解法, 也就是利用归并排序的归并将两个 ...
- VS发布网站详细步骤
1.打开你的VS2012网站项目,右键点击项目>菜单中 重新生成一下网站项目:再次点击右键>发布: 2.弹出网站发布设置面板,点击<新建..>,创建新的发布配置文件: 输入你自 ...
- [MyBean-插件]MyBean通用报表免费无限制版本发布
[优点] 1.开发时无需安装报表组件(可以直接用编译好的文件,注意版权说明,请自行编译一次相应的报表插件文件). 2.无带包烦恼所有版本Delphi都可以使用,不拖累Delphi版本的 ...