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. .net正则表达式

    1. "^-?[1-9]\\d*$",//整数 2. "^[1-9]\\d*$", //正整数 3. intege2:"^-[1-9]\\d*$&qu ...

  2. Spring 4集成 Quartz2(转)

    本文将演示如何通过 Spring 使用 Quartz Scheduler 进行任务调度.Spring 为简化 Quartz 的操作提供了相关支持类.本文示例使用的相关工具如下: Spring 4.2. ...

  3. isa指针

    转载自 http://www.cnblogs.com/zhangdashao/p/4438540.html 可以去这里看详细的. 每个Objective-C对象都有一个隐藏的数据结构,这个数据结构是O ...

  4. 循序渐进Python3(三) -- 3 -- 内置函数

    上一篇我们又介绍了26个Python内置函数.现回忆一下吧: 1.all 2.any 3.ascii 4.bin 5.bool 6.bytes 7.bytearray 8.callable 9.chr ...

  5. [转载] 4. JebAPI 之 jeb.api.ui

    本文转载自: https://www.zybuluo.com/oro-oro/note/145250 JebInstance可以通过getUI()方法来获得jeb.api.ui.JebUI. JebU ...

  6. E. Santa Claus and Tangerines 二分答案 + 记忆化搜索

    http://codeforces.com/contest/752/problem/E 首先有一个东西就是,如果我要检测5,那么14我们认为它能产生2个5. 14 = 7 + 7.但是按照平均分的话, ...

  7. 高版本Chrome不支持showModalDialog

    高版本Chrome不支持window.showModalDialog,可用window.open代替 var url = "https://www.baidu.com"; var ...

  8. There is no getter for property named 'NULL' in ……

    往往细节上的错误事最要命的事情,当你看着代码,逻辑上没有问题,但是却又曝出一些莫名其妙不知所以的错,你百度了 说出来的原因又是乱七八糟的鸡肋!很无助,纠结了很久,浪费了很多宝贵的时间--看代码! &l ...

  9. ASP.NET ZERO 学习 事件总线

    用于注册和触发客户端的全局事件. 介绍 Pub/sub事件模型广泛用于客户端,ABP包含了一个简单的全局事件总线来 注册并 触发事件. 注册事件 可以使用abp.event.on来注册一个全局事件.一 ...

  10. golang--gopher北京大会(1)

    大会感想:牛人真的很能写代码,实现很多功能,而且开源的精品越多,影响力越大,越能过上dream life.比如beego的作者,去了America,进入了Apple.另外,精英们特点是表达能力很强,也 ...