国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Unity 腳本中Start() 與 Awake()的區別

2019-11-10 17:35:45
字體:
來源:轉載
供稿:網友

剛開始接觸Unity時對腳本中的函數執行順序不是很了解

Start()函數是在Update()函數第一次執行之前進行調用,它的執行條件是需要首先實例化對象之后該對象的start()才能夠調用。

Awake()函數與Start()的機制差不多,同樣是在游戲運行過程中只執行一次,但是Awake()是在游戲運行開始后系統自動調用,通常可以理解為Awake()比Start()先執行,但也不一定。自己理解的就是Awake()在沒有實例化對象時,直接可以運行

Awake()多用于創建變量   Start()多用于給變量賦值

可以看一些Unity圣典的解釋:

 Awake()當一個腳本實例被載入時Awake被調用。Awake用于在游戲開始之前初始化變量或游戲狀態。在腳本整個生命周期內它僅被調用一次.Awake在所有對象被初始化之后調用,所以你可以安全的與其他對象對話或用諸如 GameObject.FindWithTag 這樣的函數搜索它們。每個游戲物體上的Awke以隨機的順序被調用。因此,你應該用Awake來設置腳本間的引用,并用Start來傳遞信息。Awake總是在Start之前被調用。它不能用來執行協同程序。

Start()Start僅在Update函數第一次被調用前調用。Start在behaviour的生命周期中只被調用一次。它和Awake的不同是Start只在腳本實例被啟用時調用。你可以按需調整延遲初始化代碼。Awake總是在Start之前執行。這允許你協調初始化順序。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东海县| 方山县| 分宜县| 大悟县| 英吉沙县| 达拉特旗| 同德县| 望谟县| 曲阜市| 舒兰市| 于田县| 周宁县| 光山县| 德格县| 伊通| 苏尼特右旗| 涞水县| 兴仁县| 昭苏县| 马关县| 德昌县| 新和县| 电白县| 阿克| 南川市| 怀远县| 壶关县| 沙雅县| 格尔木市| 渝中区| 县级市| 夏河县| 宜丰县| 耿马| 广宗县| 万安县| 上杭县| 伊金霍洛旗| 望谟县| 和林格尔县| 延边|