http://www.cr173.com/

前些日子发现朋友都在玩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桌面版的更多相关文章

  1. [MFC] 高仿Flappy bird 桌面版

    这是今年年初做的东西,一直没有时间整理,现在拿出来分享下~ 目录 开发背景 开发语言及运行环境 效果展示 游戏框架说明 游戏状态及逻辑说明 经典算法说明 重量级问题解决 开发感想 一.开发背景: fl ...

  2. 通通制作Html5小游戏——第二弹(仿flappy bird像素鸟)

    亲爱的博友们,我又回来啦~因为我们技术宅的思想只有技术宅懂得,好不容易写了点好玩的东西发QQ空间,结果只有11的UV,0回复....10分钟ps一个女神的素描效果发QQ空间朋友圈,一大堆回复加赞,作为 ...

  3. 飞翔的圆(Flappy Bird)游戏源码

    这个源码是一个不错的休闲类的游戏源码,飞翔的圆(Flappy Bird)游戏源码V1.0,本项目是一个仿Flappy Bird的小游戏,只不过是把Flappy Bird里面的鸟替换成了简单的圆.感兴趣 ...

  4. 使用Hilo.JS快速开发Flappy Bird

    http://hiloteam.github.io/tutorial/flappybird.html#_9 Flappy Bird是一款前不久风靡世界的休闲小游戏.虽然它难度超高,但是游戏本身却非常简 ...

  5. canvas 制作flappy bird(像素小鸟)全流程

    flappy bird制作全流程: 一.前言 像素小鸟这个简单的游戏于2014年在网络上爆红,游戏上线一段时间内appleStore上的下载量一度达到5000万次,风靡一时, 近年来移动web的普及为 ...

  6. 自己动手写游戏:Flappy Bird

    START:最近闲来无事,看了看一下<C#开发Flappy Bird游戏>的教程,自己也试着做了一下,实现了一个超级简单版(十分简陋)的Flappy Bird,使用的语言是C#,技术采用了 ...

  7. C语言版flappy bird黑白框游戏

    在此记录下本人在大一暑假,2014.6~8这段时间复习C语言,随手编的一个模仿之前很火热的小游戏----flappy bird.代码bug基本被我找光了,如果有哪位兄弟找到其他的就帮我留言下吧,谢谢了 ...

  8. 闲扯游戏编程之html5篇--山寨版《flappy bird》源码

    新年新气象,最近事情不多,继续闲暇学习记点随笔,欢迎拍砖.之前的〈简单游戏学编程语言python篇〉写的比较幼稚和粗糙,且告一段落.开启新的一篇关于javascript+html5的从零开始的学习.仍 ...

  9. 【Unity3D基础教程】给初学者看的Unity教程(四):通过制作Flappy Bird了解Native 2D中的RigidBody2D和Collider2D

    作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点[推荐].谢谢! 引子 在第一篇文章[Unity3D基础教程] ...

随机推荐

  1. javascript 面向对象编程指南 的一些题目

    1. function C () { this.a = 1; return false; } console.log (typeof new C()); object function C () { ...

  2. linux C学习笔记03--单链表

    单链表一直是程序员的基础,我也来复习下,下面是link.c中的代码,供main.c 调用,代码很简单,单链表的插入,删除,查找和遍历输出, #include <stdio.h> #incl ...

  3. 使用SftpDrive+SourceInsight阅读开源代码

    在虚拟机环境下使用Linux编写和阅读代码,我之前一直是通过Xshell利用ssh登录至虚拟机从而在命令行下使用vim来进行的.目前有阅读开源代码的需要,虽然vim+ctags+cscope可以完成这 ...

  4. 5.Mybatis的输出映射(就是对查询的结果集的映射)

    Mybatis的输出映射,也就是对查询结果集的一个映射,主要有两种: 1.resultType(不需要配置,可以直接用) 一般是实体类 基本类型也可以 2.resultMap(需要配置resultMa ...

  5. php 文件读取

    整理了一下PHP中读取文件的几个方法,方便以后查阅. 1.fread string fread ( int $handle , int $length ) fread() 从 handle 指向的文件 ...

  6. spring集成freemaker 制作短信模板

    1.配置configure的Bean,Bean中指定了模板文件的路径和刷新时间等配置. <!-- 配置freeMarkerConfigurer进行属性值的注入 --> <bean i ...

  7. ios 用户相册

    ## 获得自定义的所有相簿 // 获得所有的自定义相簿 PHFetchResult<PHAssetCollection *> *assetCollections = [PHAssetCol ...

  8. 解决 webx.ml 中The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 问题

    在Eclipse 的项目  上,点击鼠标右键 选中 ,并 Finish 即可.

  9. 搭建DHCP服务器以及DHCP中继服务器

    一.DHCP服务器   1.首先配置DHCP服务器的IP地址(DHCP服务器网卡桥接在VMnet1)   .配置好IP后重启DHCP服务 3.安装DHCP服务器,在这里我用的是YUM安装的(关于YUM ...

  10. 学习springMVC框架配置遇到的问题-数据写入不进数据库时的处理办法

    配置完了,运行,数据写入不到数据库中,就应该想UserAction 中的handleRequest()方法有没有进去,然后就设置断点.如果发现程序没有进去,就再想办法进去.