上回说到由于如何搭建了一个Android开发环境,如有不懂,还需google一下,由于是非常基础,就好像写编程的helloworld一样,简单但必要。

       接下来,进入先跳过《设计模式》,直接进入简单游戏模式的开发。

Android五子棋游戏开发实战的亲身经验之四

       由于手头上刚刚被调到新的工作组,由一个火坑跳到别一个火坑的原因,所以抽不出时间来写,只能一点一点的写下去。

       在这一集,我并不想说如何如何step by step的说如何搞出一个android五子棋,因为那样子一点基本上抄网上的就可以了。

       首先我想说的,如何在android下进行编程,我看过几本相关的牛书,其中一本比较适合各位看的是《Android2.0游戏开发宝典》,这本书里头的代码,可以说,只能在android下开发,没有进行什么解偶,符合小应用开发,如果你有过vb、mfc、delphi的vcl的编程经验很快就能上手,因为他主要是通过消息处理来处理程序之间的通信的,但没什么分层开发的概念,也就是说,如果你想再开发另一个游戏的话,必需进行再造轮子的事情,但如果你想分层,即实现分层编程,那么那本书就不是很适合了。只能说,那本书只是开发游戏的入门。不过,还是值得一看的。比如游戏的A*算法,使用高性能的view的处理,帧的处理,游戏的实战。

       说回这个故事,在编一个程序时,刚开始 我使用swing的编程思想,但这样我走了不少的弯路,比如,有代码是这样的:

Java代码
  1. class A {    
  2.   
  3.   Thread t ;    
  4.   
  5.   Object obj;   
  6.   
  7.   
  8.   public A(){    
  9.   
  10.      obj = new Object();   
  11.   
  12.   
  13.       t = new Thread(new Runable{    
  14.   
  15.         public void run(){    
  16.   
  17.               obj.wait();    
  18.   
  19.               .......   
  20.   
  21.   
  22.         }   
  23.   
  24.   
  25.     });   
  26.   }    
  27. }   

       其中的 obj.wait处,总是抛出空指针,但我明明是已经初始化了obj呀,还有就是在,另一条线程中处理UI,也走了不少的弯路,总之在pc上的编程思想,到了android就奇怪的变样了,但乍么说都好,经过一天的时间,我总算将android的实现五子棋简单的实现了,包括AI功能,而且游戏架框是分层的,也就是说,我实现了简单的游戏引擎。 这样以后再开发时,就不用再制造轮子,但问题来了,性能上不去! 还在琢磨着。

       看来,跟我说第一集的一样,你本来想很简单的时候,当你真的遇到,就往往比你想像中的成本要大,这就是“看不透原理”。

       我再回来说,如何将游戏的分层, 将游戏分层其实多种方法,如编过spring的知道,可以通过注入来分层,可以注释方式等,但我使用的是考参了GOF(设计模式)的“抽像工厂”模式的方式,进行分层,其实还可以是代理模式,桥模式的,但我比较懒,而且加入刚刚跳入了先前说的,‘另一火坑’,所以抽像工厂是比较适合我的。

       像代码写好了,游戏的AI也完成了,是不是说明这个故事完结呢,当然不是了,因为这只是整个系统工艺的开始,他的后面还有系统调试,系统测试,压力测试,性能测试,系统整合,产品指标,游戏说明,系统维护,放上google市场,如何买卖,如何增加安装量,这样样都要做好,才算得上完整。

       好,本集的思路比较乱,但总算抽到时间来写点东西,有空再整理这一集。下集再会,谢谢.

本文发布:Android开发网
本文地址:http://www.jizhuomi.com/android/game/176.html
2012年8月26日
发布:鸡啄米 分类:Android游戏开发 浏览: 评论:1