Android游戏开发教程之小兔子跳铃铛小游戏

  次阅读 作者:智能小宝 来源:互联网 2016-01-19 12:01 我要评论(0)

本文记录了一位学生开发者在开发一款Android小兔子跳铃铛游戏时的点点滴滴,有疑惑,更有收获与感悟,在这发出来与大家分享。

一、 先看看效果图

二、运行环境说明

我是用Eclipse开发的,在模拟器上运行。模拟器的配置如下。大家注意下Skin选项中 Built-in 必须是 WQVGA400 (这是我游戏的一个缺陷)。

三、体系结构说明

在看这部分之前,我建议大家先到网上玩玩那个小游戏 (http://www.vifo.com.cn/games/no2/tiaolindang/tiaolindang.swf),相信会对你对我下面 类容的理解有所帮助。

下面是Eclipse截图,我简要说明下各个类的作用:

1、RabitActivity:游戏就从这个Activity启动,它的主要作用就是负责 展示游戏简介(IntroduceView),如何游戏(HelpView),是否开启音效AudioView)的这三个不同的屏幕。

2、GameActivity:当用户选择完是否开启音效后,就切换到一个新的 activity,即GameActivity。

3、 Rabit,Bell, Bird,对游戏中兔子,铃铛,鸟的定义。包括状态(state),图片(bitmaps), 速度(speed)都在里面定 义。我感觉,state是个很重要的属性,他决定着这个对象到底处于何种状态,从而根据这些状态绘制不同的图片。

4、GameSurfaceView:游戏的显示类,同时是个大容器,将所有的游戏中出现的 对象都包含进来,里面的update_all_components()是游戏的核心。

5、 BellCreator:负责铃铛的对象的创建。当一个铃铛从屏幕中消失是,该对象并没有被销毁,而是被BellCreator回收,当下次有新的铃铛在 屏幕上出现时,BellCreator就把回收过来的Bell对象重新初始化后交给GameSurfaceView。目的是节约资源,提高系统的系能。

6、Background:负责动态背景的生成。

7、AudioProvider:音频的封装,负责音效。

那么整个游戏是如何跑起来,所有的对象(图片)如何动起来的呢?

相信有过一些有小游戏开发经验的人知道,在整个系统中,除了主线程外,会启动另外一个线程, 这个线程负责不断刷新所有对象的状态,更新图片,从而达到动画的效果。

我也是这样做的。在GameSurfaceView中我有个内部 类,RefurbishThread,它负责每100毫秒调用 GameSurfaceView.update_all_components()方法更新所有rabit,bell,bird,background状 态,然后重绘屏幕。

整个程序的源码可以在http://down.51cto.com/data/804921下 载。

个人觉得Rabit,Bell等对象状态的定义是个需要花脑筋的地方,我做得还不够好,下面 是定义Rabit的一些状态:

privateint face_state;

privateint ground_state;

privateint air_state;

//rabit面左面右状态

publicstaticfinalint RABIT_FACE_LEFT = 1;

publicstaticfinalint RABIT_FACE_RIGHT = 2;

//rabit在地面状态

publicstaticfinalint RABIT_NOT_ON_GROUND = 0;

publicstaticfinalint RABIT_LEFT_STOP = 1;

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...