本文轉(zhuǎn)載自:http://liuguozhu.blog.51cto.com/9142031/1584768
問題1:
當(dāng)腳本添加游戲?qū)ο筮^程中糕档,彈出的出錯(cuò)窗口: “Can't add script....." ?
解答:
原因是Unity 規(guī)定腳本的文件名稱必須與類名相同丹锹,否則報(bào)錯(cuò)。請更改Unity腳本的名稱或者類的名稱罚舱。
問題2:
在學(xué)生學(xué)習(xí)導(dǎo)航尋路過程中蛀醉,在運(yùn)行過程中遇到的運(yùn)行時(shí)錯(cuò)誤信息: "SetDestination" can only be called on an active agent that has been placed on a NavMesh"?
解答:
典型導(dǎo)航尋路錯(cuò)誤布蔗,主要原因是你需要導(dǎo)航的游戲?qū)ο筇傥ィ胖玫奈恢貌粚Γ磞軸遠(yuǎn)離了“地面”(NavMesh),要么離開了烘培的"地面"纵揍。請檢查與更改相關(guān)尋路主角的Y軸位置顿乒。
問題3:
用戶拿到的工程文件,發(fā)生打不開的錯(cuò)誤(不報(bào)錯(cuò))泽谨。 也就是Unity 無論怎樣都打不開指定的Unity 項(xiàng)目璧榄?
解答:
一般是因?yàn)閁nity 對中文支持的不好特漩,所以工程所在路徑不能有中文。 請把你的工程文件的所在路徑進(jìn)行檢查犹菱,把相關(guān)中文路徑去除即可拾稳。
問題4:
當(dāng)用戶導(dǎo)入.unitypackage 文件的過程中顯示錯(cuò)誤信息: "Error While importing package: Couldn't decompress package.Failed importing package ....."?。
解答:
這個(gè)問題一般也是因?yàn)閁nity 對中文支持的不好腊脱,所以需要導(dǎo)入的.unitypackage 文件所在路徑不能有中文访得。 請把你的“包”(或者一些*.unitypackage 插件)文件的所在路徑進(jìn)行檢查,把相關(guān)中文路徑去除即可陕凹。
問題5:
用戶在運(yùn)行游戲工程過程中悍抑,發(fā)現(xiàn)沒有聲音? 且計(jì)算機(jī)硬件沒有問題杜耙? 在Unity 的Console 窗口中有如下信息大量顯示: “ There are 2 audio listeners in the scene” 搜骡?
解答:
原因是你當(dāng)前場景中存在2個(gè)以上的“Audio listeners”, 請只保留一個(gè)即可,多余的刪除佑女。 一般也都發(fā)生在學(xué)員引入U(xiǎn)nity 自帶的“第一人稱/第三人稱”角色的時(shí)候發(fā)生的現(xiàn)象记靡。 你可以把主攝像機(jī)的Audio Listener 組件暫時(shí)禁用或者刪除掉即可。
問題6:
程序運(yùn)行過程中最容易出現(xiàn)的一個(gè)運(yùn)行時(shí)錯(cuò)誤信息: “NullReferenceException: Object reference not set to an instance of an object” 团驱?
解答:
這是典型的“空引用錯(cuò)誤”摸吠, 本質(zhì)是原本需要實(shí)例化的游戲?qū)ο鬀]有成功的加載,程序后面的指令已經(jīng)在用上面沒有實(shí)例化的對象所造成的嚎花! 寸痢。 具體問題還需要具體分析,看是否什么組件沒有加載紊选,或者一些 GetCompont() 與 Resource.Load() 等方法的路徑名稱是否正確等啼止。
問題7:
程序運(yùn)行過程中出現(xiàn)的一個(gè)運(yùn)行時(shí)錯(cuò)誤信息: “MissingReferenceException: The object of type 'GameObject' has been destroyed”
解答:
缺少引用異常!通常原因是由于指定的游戲?qū)ο笠呀?jīng)銷毀了兵罢,而其他代碼還要訪問(調(diào)用)献烦,造成的錯(cuò)誤!卖词。
問題8:
程序運(yùn)行過程中出現(xiàn)的一個(gè)運(yùn)行時(shí)錯(cuò)誤信息:“InvalidCastException: Cannot cast from source type to destination type”巩那?
解答:
無效的轉(zhuǎn)換異常: 不能從源類型轉(zhuǎn)換到目標(biāo)類型。 需要學(xué)員仔細(xì)檢查程序中強(qiáng)制轉(zhuǎn)換是否合理坏平? C# 的“裝箱拆箱”是否正確等拢操。
問題9:
“UnassignedReferenceException: The variable goLineRedDiamend_Prefab of 'ScenceManager' has not been assigned”?
解答:
未分配引用異常舶替。 通常是腳本中的public 類型字段令境,在游戲運(yùn)行過程中,沒有給予附加相對應(yīng)的“預(yù)設(shè)”或者游戲?qū)ο笏斐傻摹?即: 沒有給腳本的公共字段添加參數(shù)造成的顾瞪。
問題10:
學(xué)員在做關(guān)于Animation 幀動(dòng)畫時(shí)出現(xiàn)的錯(cuò)誤:“AnimationEvent has no function name specified"?
解答:
在Animation 中你定義了一個(gè)事件舔庶,而沒有給事件添加對應(yīng)的“事件方法”抛蚁,導(dǎo)致出錯(cuò)!