唤醒与开始

Unity 中的 API 脚本提供了一组初始化函数。

初始化函数是在脚本生命周期开始时调用的函数。

Unity 中的初始化函数是 'Awake' 和 'Start'。

'Awake' 与 'Start'

'Awake' 和 'Start' 之间的区别在于执行顺序和运行条件。

无论脚本是否启用,函数 'Awake' 首先运行,而函数 'Start' 仅在脚本启用时运行。这两个函数都在第一个 'Update' 方法之前运行。

    void Awake()
    {
        Debug.Log("Awake runs first");
    }

    void Start()
    {
        Debug.Log("Start runds second");
    }

函数 'Start' 也可以是协程(通过用 'IEnumerator' 替换 'void' 并添加 'yield' 参数),但函数 'Awake' 不能。

    IEnumerator Start()
    {
        //Wait 1 second before running the next code
        yield return new WaitForSeconds(1);

        Debug.Log("Start");
    }

带走

这两个函数对于初始化目的(例如分配私有变量、生成游戏对象等)都很有用,并且当组合使用时,可以帮助实现各种场景。

推荐文章
Unity MonoBehaviour 指南
在运行时开始时初始化 Unity 中的值的方法
Unity C# 中有用关键字列表
了解函数和方法调用
Unity C# 脚本语言简介
如何成为一名更好的 Unity 程序员
Unity混淆方法和反黑客保护