| 
         
     
     | 
     | 
    
  
    | 
    RPG游戏引擎制作——框架篇 | 
   
  
     | 
   
  
     | 
   
  
    | 
     作者:未知  来源:月光软件站  加入时间:2005-5-13 月光软件站  | 
   
  
    一个完整的RPG游戏由角色、AI、道具、地图等基本元素组成,目前的RPG游戏种类繁多,但一样是相同的那就是游戏的框架,当一个游戏的框架确定以后,这个游戏的制作思路就会显得很清晰了。下面我给出一个游戏的核心操作:
  public void run() {         long startTime = 0;         long interval = 1000 / this.m_nFramePerSecond;         long endTime = 0;         long lagTime = 0;         this.showState(KGameState.MD_COVER); //初始化为第一个状态         Thread currentThread = Thread.currentThread();         while (true && currentThread == Thread.currentThread()) {             startTime = System.currentTimeMillis();             this.keyAction();             this.gameAction();             if (this.m_bRepaint)this.flushGraphics();             endTime = System.currentTimeMillis();             if ((lagTime = endTime - startTime) < interval) {                 try {                     Thread.currentThread().sleep(interval - lagTime);                 } catch (Exception e) {                     e.printStackTrace();                 }             } else {                 Thread.currentThread().yield();             }             if (this.m_bAbort)break;         }     } |   PS:keyAction()进行按键处理,如果有些手机不支持软件可以通过command进行转化。        gameAction()进行游戏本身的逻辑操作,这些操作应当属于游戏系统本身,不属于用户的交互产生;        flushGraphics()进行界面重绘。开发人员应当在需要的时候让m_bRepaint为true进行重绘。 游戏因为不同的功能被分为不同的游戏状态,所以需要一个状态机来控制游戏状态的转化,这个状态机要实现的功能有:设置当前状态、取得当前状态、取得前一个状态、保存游戏状态、加载游戏状态。还有转到某个状态的初始化操作(showState())。这样一个游戏框架就建立起来了。
  
 
  | 
   
  
     | 
   
  
     相关文章:相关软件:  | 
   
   
      |