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. 第20章 priority_queue优先队列容器

    /* 第20章 priority_queue优先队列容器 20.1 priority_queue技术原理 20.2 priority_queue应用基础 20.3 本章小结 */ // 第20章 pr ...

  2. 调用百度地图API的应用混淆后出问题

    1 混淆后出问题,程序异常退出 在proguard-project.txt中添加 -libraryjars libs/BaiduLBS_Android.jar -keep class com.baid ...

  3. Brn系列网上商城数据库说明文档

    单店版BrnShop_1.9.351数据字典:点击下载 多店版BrnMall_1.9.496数据字典:点击下载 有对网上商城程序设计感兴趣的朋友,欢迎加入QQ群:235274151,大家可以交流下!

  4. Ubuntu 利用 xinetd 限制 SSH 连接数

    安装 xinted sudo apt-get install xinetd 修改配置文件 sudo vim /etc/xinetd.conf 在配置文件中加入下列配置 defaults { insta ...

  5. How to Shorten the Paper

    . Remember: you are writing for an expert. Cross out all that is trivial or routine. . Avoid repetit ...

  6. (十二) 一起学 Unix 环境高级编程 (APUE) 之 进程间通信(IPC)

    . . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...

  7. ios底层网络请求错误码

    kCFHostErrorHostNotFound = 1, kCFHostErrorUnknown = 2, // Query the kCFGetAddrInfoFailureKey to get ...

  8. POSIX信号处理

    信号用于通知进程发生了某件事情,可以由一个进程发给另一个进程,也可以由内核发个一个进程. 每个信号都有一个关联的行为,可以通过sigaction函数来设置一个信号的行为,有3种选择: 1.定义一个信号 ...

  9. Python学习笔记- Python threading模块

    Python threading模块 直接调用 # !/usr/bin/env python # -*- coding:utf-8 -*- import threading import time d ...

  10. 理解AOP

    http://www.cnblogs.com/yanbincn/archive/2012/06/01/2530377.html Aspect Oriented Programming  面向切面编程. ...