游戏中的GameLoop

  游戏循环GameLoop是游戏程序和一般软件程序在执行时候,有不一样的运行方式而特别设计的一种程序运行流程。

  一般的程序大部分是事件驱动的,最直观的感受就是这类软件主界面有很多的按钮或菜单,等待用户的单击或者选择

产生事件,从而执行后续的操作。而游戏中有着不同的运行方式,游戏中就相当于一个游戏世界,这个世界会自己运行,

有自己的运行规则。玩家知识扮演其中的一个角色。游戏的更新是不同于一般软件的更新,游戏的更新包括玩家操作,

AI更新,画面更新,特效更新,物理更新,游戏逻辑更新等等。


 

GameLoop的简单图示:

  


 

简单代码实现:

  

void main()
{
    //游戏初始化
    GameInit();
    //游戏主循环
    while(isGameover==false)
    {
      //玩家控制
      UserInput();
      //游戏逻辑更新
      GameLogicUpdate();  
      //游戏画面更新
      GameRender();
    }
    //释放资源
    GameRelease();            
    
}

 

 


 

Unity3D中的GameLoop

  Unity官网的解释

  附图如下:


 

posted @ 2018-01-07 21:00  Recho  阅读(1852)  评论(0编辑  收藏  举报