【Unity3D与23种设计模式】游戏的主循环——Game Loop

游戏与其他软件最大的不同

就是游戏有Update逻辑

一般的软件是由“事件”驱动

因为它不会突然跑出来一只“兔子”

因此,只有游戏才有“帧”的概念

(没秒多少帧,就是没秒Update执行多少次)

Unity有自己的生命周期

Awake,Start,Update…

只要继承MonoBehaviour就可以启用此生命周期

完整的生命周期请参看我以前写的博客http://www.cnblogs.com/fws94/p/6372557.html

虽然继承MonoBehaviour可以达到定期更新的目的

但这样一来,“单一的游戏功能”类就与Unity3D有了依赖关系

换句话说,如果你以后想换别的引擎,事情就会变得很麻烦

所以,可以只创建一个类,这个类继承MonoBehaviour,其他类不继承MonoBehaviour

其他需要使用生命周期的方法

在此类中调用

如:

public void Start(){

    game.Instance.Start();

    UI.Instance.Start();

}

public void Update(){

    game.Instance.Update();

    UI.Instance.Update();

}
原文地址:https://www.cnblogs.com/fws94/p/7200589.html