日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

unity 继承会调用start吗_Unity 继承MonoBehaviour脚本 执行顺序 详解

發(fā)布時間:2025/3/20 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 unity 继承会调用start吗_Unity 继承MonoBehaviour脚本 执行顺序 详解 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

先看結(jié)果

Awake ->OnEnable-> Start ->-> FixedUpdate-> Update ?-> LateUpdate ->OnGUI ->OnDisable ->OnDestroy

如果Script0,?Script1,Script2腳本上都有Awake OnEnable Start這些函數(shù)

執(zhí)行順序

Script0,?Script1,Script2腳本上Awake函數(shù)

Script0,?Script1,Script2腳本上OnEnable函數(shù)

Script0,?Script1,Script2腳本上Start函數(shù)

。。。。。。。。。。

如果一定要明確Script0的Awake函數(shù)執(zhí)行順序高于Script1,Script2的Awake函數(shù)

則需要設(shè)置腳本執(zhí)行的順序

點擊紅色框的+號 添加對應(yīng)的腳本

*數(shù)值越小的腳本將先執(zhí)行,如果沒有設(shè)置的腳本將按默認(rèn)的順序執(zhí)行。

詳解

Awake(執(zhí)行一次)

官方解釋:當(dāng)一個腳本實例被載入時Awake被調(diào)用

最最最最開始被調(diào)用

執(zhí)行代碼

Instantiate("實例化的預(yù)設(shè)");

*同時預(yù)設(shè)上Inspector紅色圈為勾選狀態(tài)

預(yù)設(shè)上的腳本會立馬執(zhí)行Awake函數(shù);

OnEnable(執(zhí)行多次)

官方解釋:當(dāng)對象變?yōu)榭捎没蚣せ顮顟B(tài)時此函數(shù)被調(diào)用。

每次激活對象時 對象上繼承MonoBehaciour上腳本 會調(diào)用一次

執(zhí)行代碼

gameObject.SetActive(false);//先隱藏對象

gameObject.SetActive(true);//顯示對象

enabled = false;//先關(guān)閉啟用

enabled= true;//開啟啟用

*都會立馬會執(zhí)行OnEnable函數(shù)

*函數(shù)里適合放適配的邏輯

Start(執(zhí)行一次)

官方解釋:Start僅在Update函數(shù)第一次被調(diào)用前調(diào)用。

紅色框勾選對應(yīng)繼承MonoBehaciour腳本的繼承變量enabled

enabled  官方解釋:啟用行為被更新,禁用行為不更新。

即enabled == false 不執(zhí)行Update函數(shù)?enabled == true 執(zhí)行Update函數(shù)

*如果運行前不勾選紅色框勾選或者在Awake函數(shù)里調(diào)用?enabled == false 則不會執(zhí)行Start函數(shù)。

*Start函數(shù)適合放界面初始化 設(shè)置文本內(nèi)容 過去子級對象 邏輯

FixedUpdate(執(zhí)行N次)

官方解釋:?當(dāng)MonoBehaviour啟用時,其 FixedUpdate 在每一幀被調(diào)用。

FixedUpdate時間在Edit->ProjectSettings->Time修改

最好不要去修改這個時間

*FixedUpdate函數(shù)適合調(diào)用Rigidbody邏輯

Update(執(zhí)行N次)

官方解釋:?當(dāng)MonoBehaviour啟用時,其Update在每一幀被調(diào)用。

實現(xiàn)各種游戲行為最常用的函數(shù)

*當(dāng)enabled == false 不執(zhí)行Update函數(shù)

LateUpdate(執(zhí)行N次)

官方解釋:?當(dāng)Behaviour啟用時,其LateUpdate在每一幀被調(diào)用。

*先執(zhí)行Updatee然后執(zhí)行l(wèi)ateUpdate。

OnGUI(執(zhí)行N次)

官方解釋:?渲染和處理GUI事件時調(diào)用。

OnDisable(執(zhí)行多次)

官方解釋:?當(dāng)對象變?yōu)椴豢捎没蚍羌せ顮顟B(tài)時此函數(shù)被調(diào)用。

于OnEnable相對應(yīng) 一個是打開后會調(diào)用 一個是關(guān)閉后調(diào)用。

OnDestroy(執(zhí)行多次)

官方解釋:?當(dāng)MonoBehaviour將被銷毀時,這個函數(shù)被調(diào)用。

執(zhí)行

Destroy(gameObject);

掛載在gameObject上的腳本立馬會執(zhí)行OnDestroy函數(shù)。

總結(jié)

以上是生活随笔為你收集整理的unity 继承会调用start吗_Unity 继承MonoBehaviour脚本 执行顺序 详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。