我在Unity文档中读到了这个:
Awake is called when the script instance is being loaded.
Awake is used to initialize any variables or game state before the
game starts.
这不矛盾吗?是在启动游戏时调用Awake()函数,还是在加载脚本的场景时调用它?
解决方法:
如果你理解Unity3D中的Execution Order of Events,那不是真的.
游戏可以包含单个场景或多个场景.
因此,如果加载了一个场景,则序列为:
> Awake() – 非常适合初始化变量.还要考虑一下GameObject在启动时是否处于非活动状态唤醒,在该对象激活之前不会调用它的唤醒方法(感谢@Everts).
> Start() – 启动核心游戏逻辑,因为调用了活动GameObject的所有其他Awake()方法.
>第一次更新()通话等等……
你要澄清的是这个词:
..before the game starts..
这意味着,在游戏逻辑开始之前.
原文地址:https://codeday.me/bug/20190519/1133840.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。