使用AndEngine重制《是男人就上一百层》
1.为什么还要做《是男人就上一百层》
一是在用Android原生API开发完《是男人就上一百层》以后,一直想体验一下用引擎开发游戏是个什么感觉,顺便也让游戏听上去高大上一些(使用XX引擎开发);二是由于有之前的基础,对如何实现该游戏有更深的理解。因此,就决定通过引擎重制《是男人就上一百层》了。
之前的项目博客:https://www.cnblogs.com/lu-xin/p/10209514.html
2.开发过程
开发过程历时弥久,并且踩了很多的坑,才终于做到基本能玩了。当然,还存在很多问题(比如选项和排行功能没做),以后如果有机会再说吧(可能也没有了)……
3.为什么选AndEngine
由于本人只熟悉java,又想找一个开源的引擎,于是选来选去找到了AndEngine,据说FlappyBird是用它做的。
4.开发过程中遇到的困难
(1)资料少
一是引擎的学习资料少。
虽然AndEngine是开源的,但多年没有更新(最后一次更新时间为2013年),能找到的资料也少的可怜(官方没有文档只有示例)。好在还是能找到一些博客教程等,通过学习和尝试,也算基本了解了该引擎的使用方法。
二是《上一百层》类型的游戏资料少。
虽然是很普通的跑酷+平台跳跃类游戏,但是用引擎实现的类似游戏很难找。开发中遇到的难点有:1.在box2d中实现无限背景和平台(目前平台是不断向上生成,高度会越来越高,这是个问题,可能会在高度太高时出bug)。2.弹簧、传送带、移动平台等对主角的影响(尤其是弹簧动画,目前是靠移动刚体的同时切换图片来实现的,可能能用弹簧关节实现)。通过摸索,基本克服了这些难点。
(2)个人原因
从开始重制游戏,到基本能实现所有的功能,用了将近一年的时间。这一年里,由于工作调整、家庭事务等原因,学习和制作的进度很慢。
5.通过开发学到的东西
(1)用引擎做游戏的方法,精灵、状态机、游戏逻辑的使用
(2)游戏引擎的工作原理
(3)AndroidNDK的原理
(4)GIMP、DIA等开源工具
(5)为学习其他引擎打下了基础
6.下一步的打算
(1)学习untiy3d,再重制游戏,争取有个更完善的作品
(2)学习像素画,提升一下美术能力
7.项目地址
https://github.com/darwinLu/Floor100ByAndEngine
使用AndEngine重制《是男人就上一百层》的更多相关文章
- gdufe1538-是男人就上100层-(三维bfs)
Problem Description: 桐老爷和UGO终于来到了名为“是男人就上一百层的塔”的下面,听说大祭司在第100层沉睡.为了题目需要,我把这个塔的层数随机打乱,层数的话大家就忘了前面的100 ...
- HTML5小游戏【是男人就下一百层】UI美化版
之前写的小游戏,要么就比较简单,要么就是比较难看,或者人物本身是不会动的. 结合了其它人的经验,研究了一下精灵运动,就写一个简单的小游戏来试一下. 介绍一下几个主要的类: Frame:帧的定义,主要描 ...
- Unity经典游戏教程之:是男人就下100层
版权声明: 本文原创发布于博客园"优梦创客"的博客空间(网址:http://www.cnblogs.com/raymondking123/)以及微信公众号"优梦创客&qu ...
- [Unity3D]自己动手重制坦克舰队ArmadaTank(2)从碰撞说起
[Unity3D]自己动手重制坦克舰队ArmadaTank(2)从碰撞说起 在上一篇里我给出了重制的坦克舰队效果图和试玩程序.本篇介绍一下玩家坦克和敌方坦克碰撞问题. +BIT祝威+悄悄在此留下版了个 ...
- [Unity3D]自己动手重制坦克舰队ArmadaTank
[Unity3D]自己动手重制坦克舰队ArmadaTank 我玩过一款坦克游戏ArmadaTank(坦克舰队),如下图所示 几个月前我尝试用Unity3D重制这款游戏,已经可以玩起来了.下面是在PC上 ...
- Xamarin.Forms之UserDialogs 重制版本
在 forms 里面,目前使用比较多的弹出组件是 Acr.UserDialogs ,但是这个组件有些小问题,比如 loading .hide 会同时把 toast 给一起关掉,android 下的 t ...
- 是男人就下100层【第四层】——Crazy贪吃蛇(2)
在上一篇<是男人就下100层[第四层]--Crazy贪吃蛇(1)>中我们让贪吃蛇移动了起来,接下来我们来实现让贪吃蛇能够绕着手机屏幕边线移动而且能够改变方向 一.加入状态并改动代码 首先我 ...
- 超多经典 canvas 实例,动态离子背景、移动炫彩小球、贪吃蛇、坦克大战、是男人就下100层、心形文字等等等
超多经典 canvas 实例 普及:<canvas> 元素用于在网页上绘制图形.这是一个图形容器,您可以控制其每一像素,必须使用脚本来绘制图形. 注意:IE 8 以及更早的版本不支持 &l ...
- 是男人就下100层【第四层】——Crazy贪吃蛇(3)
上一篇<是男人就下100层[第四层]--Crazy贪吃蛇(2)>实现了贪吃蛇绕着屏幕四周移动,这一篇我们来完成贪吃蛇的所有功能. 一.随机产生苹果 private void addAppl ...
随机推荐
- JZOJ 5870 地图
直接解释题解,记录一下.
- sql server if exists用法
if exists用法 if exists 判断表中的内容是否存在 IF EXISTS(SELECT FROM proprice_sheet WHERE vndcode = @vndc ...
- /dev/null和/dev/zero的作用
经常会看到dd命令用到/dev/zero文件,这里总结一下/dev/null和/dev/zero的作用和使用实例. 在类Unix系统(包括Linux)中,/dev/null 它是空设备,也称为位桶(b ...
- DES 加密 转码 脱敏
from pyDes import des, CBC, PAD_PKCS5 import binascii # 秘钥 KEY = 'mHAxsLYz' from pyDes import des, C ...
- SpatialHadoop的编译与运行
本文通过MetaWeblog自动发布,原文及更新链接:https://extendswind.top/posts/technical/spatialhadoop_compile_and_run Spa ...
- Java基础系列 - try...catch...finally
package com.test6; import java.io.FileReader; import java.io.IOException; /** * try...catch...finall ...
- Lucene核心数据结构——FST存词典,跳表存倒排或者roarning bitmap 见另外一个文章
Lucene实现倒排表没有使用bitmap,为了效率,lucene使用了一些策略,具体如下:1. 使用FST保存词典,FST可以实现快速的Seek,这种结构在当查询可以表达成自动机时(PrefixQu ...
- MyBatis 与 Hibernate
MyBatis 是一个优秀的基于 Java 的持久层框架,它内部封装了 JDBC,使开发者只需关注 SQL 语句本身,而不用再花费精力去处理诸如注册驱动.创建 Connection.配置 Statem ...
- 更换镜像加快python pip 安装扩展库的速度
一些镜像源: 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/ 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科 ...
- D.Dwarf Tower
Vasya在玩一个叫做"Dwarf Tower"的游戏,这个游戏中有n个不同的物品, 它们的编号为1到n.现在Vasya想得到编号为1的物品. 获得一个物品有两种方式: 直接购买该 ...