五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Unity-腳本序列化錯(cuò)誤

2021-01-13 14:25 作者:unity_某某師_高錦錦  | 我要投稿

序列化是將數(shù)據(jù)結(jié)構(gòu)或?qū)ο鬆顟B(tài)轉(zhuǎn)換為 Unity 可存儲(chǔ)并在以后可重構(gòu)的格式的自動(dòng)過(guò)程。(請(qǐng)參閱有關(guān)腳本序列化的文檔以了解更多信息。)

在某些情況下,腳本序列化可能會(huì)導(dǎo)致錯(cuò)誤。下面列出了其中一些錯(cuò)誤的修復(fù)方法。

從構(gòu)造函數(shù)或字段初始化函數(shù)調(diào)用 Unity Scripting API

在?MonoBehaviour?構(gòu)造函數(shù)或字段初始化函數(shù)中調(diào)用諸如?GameObject.Find?之類的腳本 API 會(huì)觸發(fā)錯(cuò)誤:“Find is not allowed to be called from a MonoBehaviour constructor (or instance field initializer), call in in Awake or Start instead.”

解決此問題的方法是在?MonoBehaviour.Start?中而不是在構(gòu)造函數(shù)中調(diào)用腳本 API。

在反序列化期間調(diào)用 Unity Scripting API

從標(biāo)有?System.Serializable?的類的構(gòu)造函數(shù)中調(diào)用諸如?GameObject.Find?之類的腳本 API 會(huì)觸發(fā)錯(cuò)誤:“Find is not allowed to be called during serialization, call it from Awake or Start instead.”

要解決此問題,請(qǐng)編輯代碼,確保不會(huì)在任何序列化對(duì)象的構(gòu)造函數(shù)中調(diào)用任何腳本 API。

線程安全的 Unity Scripting API

大多數(shù)腳本 API 都受上面列出的限制所影響。只有部分 Unity Scripting API 免受影響,可從任何位置接受調(diào)用。它們?nèi)缦拢?/p>

  • Debug.Log

  • Mathf?函數(shù)

  • 簡(jiǎn)單的獨(dú)立結(jié)構(gòu);例如,像?Vector3?和?Quaternion?這樣的數(shù)學(xué)結(jié)構(gòu)

為了降低序列化過(guò)程中出錯(cuò)的風(fēng)險(xiǎn),只能調(diào)用不需要在 Unity 本身中獲取或設(shè)置數(shù)據(jù)的獨(dú)立 API 方法。僅在沒有其他選擇的情況下才調(diào)用它們。


Unity-腳本序列化錯(cuò)誤的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
华池县| 达拉特旗| 磐安县| 四川省| 全南县| 广德县| 洞头县| 洱源县| 玛沁县| 永州市| 深圳市| 盱眙县| 台湾省| 桂平市| 宁化县| 高尔夫| 宝清县| 临洮县| 敖汉旗| 三门县| 桃园县| 老河口市| 集贤县| 古田县| 奎屯市| 新乡市| 新源县| 黑龙江省| 广南县| 沅陵县| 荔浦县| 叶城县| 临江市| 广东省| 宁阳县| 炉霍县| 双鸭山市| 双辽市| 瑞昌市| 桃江县| 永善县|