国产探花免费观看_亚洲丰满少妇自慰呻吟_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之前執行。這允許你協調初始化順序。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 淳化县| 黔江区| 新和县| 翼城县| 神农架林区| 图们市| 平江县| 海原县| 涞水县| 永吉县| 砚山县| 大姚县| 永顺县| 平和县| 开平市| 湘乡市| 贵德县| 宣城市| 和政县| 惠安县| 赫章县| 临沂市| 石门县| 儋州市| 满城县| 会宁县| 伽师县| 永平县| 留坝县| 马边| 白银市| 安顺市| 石棉县| 凤阳县| 固安县| 斗六市| 东乡| 永寿县| 萍乡市| 黔东| 涞源县|