簡體   English   中英

在Unity中,是在游戲開始之前還是場景開始之前調用Awake()?

[英]In Unity, is Awake() called before the game starts or before the scene starts?

我在Unity文檔中閱讀了此內容:

加載腳本實例時將調用Awake。

在游戲開始之前,“喚醒”用於初始化任何變量或游戲狀態。

這不是矛盾的嗎? 啟動游戲時會調用Awake()函數,還是在加載存在腳本的場景時調用Awake()函數?

如果您了解Unity3D 中事件執行順序,那不是真的。

一個游戲可以包含一個或多個場景。

因此,如果加載了場景,則序列為:

  • Awake() -非常適合初始化變量。 還請考慮一個 GameObject 在啟動Awake期間是否處於非活動狀態,直到該對象變為活動狀態為止,它的Awake方法才被調用(感謝@Everts)。

  • Start() -啟動核心游戲邏輯,因為調用了活動GameObject的所有其他Awake()方法。

  • First Update()調用等等。

您需要澄清的是以下術語:

..在游戲開始前 ..

這意味着在您的游戲邏輯開始之前。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM