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

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

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

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

剛開始接觸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之前執行。這允許你協調初始化順序。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 龙南县| 金华市| 乌海市| 绵竹市| 二连浩特市| 勃利县| 罗江县| 科尔| 瑞安市| 永定县| 应城市| 库伦旗| 岳阳县| 莆田市| 青铜峡市| 文山县| 密山市| 汶上县| 璧山县| 秀山| 利辛县| 仁化县| 册亨县| 楚雄市| 高雄县| 紫云| 和硕县| 个旧市| 桐柏县| 集安市| 疏附县| 霍山县| 天镇县| 乃东县| 光泽县| 晴隆县| 丰顺县| 蒙城县| 昔阳县| 浮山县| 高平市|