unity3D常见问题
生活随笔
收集整理的這篇文章主要介紹了
unity3D常见问题
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
總結(jié)自己在學(xué)習(xí)中遇到的問題。
記錄問題,幫助他人,有什么不正確的地方歡迎指正
沒有發(fā)生碰撞
兩個(gè)物體(Plane和Cube)都加入了collider,當(dāng)中一個(gè)加入了rigidbody,應(yīng)該會(huì)產(chǎn)生碰撞,但是當(dāng)執(zhí)行時(shí),cube總是掉下去.非常納悶, 經(jīng)過細(xì)致研究。發(fā)現(xiàn) Plane和Cube的Transform.position Y 同樣,也就是兩個(gè)物體的Y坐標(biāo)一樣,兩個(gè)物體是相接觸的,所以沒有發(fā)生碰撞==================================================================================================================
Plane與rigidbody
Compute mesh inertia tensor failed for one of the actor's mesh shapes! Please change mesh geometry or supply a tensor manually!
在Plane上加入了rigidbody,于是彈出這個(gè)錯(cuò)誤。 解決的方法。給mesh collider 的Convex 參數(shù)打上勾.或者改變collider,用薄的box來取代plane==================================================================================================================
Screen.showCursor = false沒用
在Game視圖下不起作用了,剛開始還起作用的。 解決方法:公布游戲。在游戲里就看不到鼠標(biāo)了(可能是視圖的原因。也可能unity存在bug) ==================================================================================================================在攝像機(jī)里找不到物體
觀察相機(jī)的XYZ坐標(biāo),與物體的XYZ坐標(biāo)。是不是重合.看Y看是不是在同一個(gè)高度。看Z。看是不是距離太遠(yuǎn),或者物體在相機(jī)的背面,看X,看物體是不是在相機(jī)左側(cè)或右側(cè)太偏了
一般相機(jī)的默認(rèn)position(0,1,-10) ==================================================================================================================Object reference not set to an instance of an object
報(bào)錯(cuò)顯示在這行:?Ray ray1 = Camera.main.ScreenPointToRay(Input.mousePosition); 經(jīng)檢查 Input.mousePosition 不為null ,我并沒有引用null 對象啊。非常奇怪。 原因(引用了NULL對象):我之前把默認(rèn)的MainCamera刪掉了,自己加入了Camera,而這行代碼是找主相機(jī),所以沒有找到 解決的方法:把camera屬性右側(cè)Tag改為MainCamera =================================================================================================================="SetDestination" can only be called on an active agent that has been placed on a NavMesh.
原因:沒有bake,或者bake的不正確
解決方法:讓對象自己主動(dòng)尋找路徑,使用Navigation烘焙地圖中不可移動(dòng)的對象 1.打開主菜單Windows->Navigation. ?在Hierarchy中選上全部障礙物,在Navigation窗體,將Navigation Static打上勾 Navigation Layer設(shè)置為not walkable 注意:烘培時(shí)不要選擇地形Terrain 2.Component->Navigation->NavMeshAgent給角色加入NavMeshAgent組件 3.在Navigation窗體中點(diǎn)擊 Bake 烘培 4.改動(dòng)Update. NavMeshAgent nAgent=gameObject.GetComponent<NavMeshAgent>();
Debug.Log(nAgent);//觀察是否獲取到了對象
nAgent.SetDestination(hit.point);
?注意:bake地圖會(huì)非常慢。假設(shè)不是必須,不要使用這樣的方式
總結(jié)
以上是生活随笔為你收集整理的unity3D常见问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: gerrit Cannot Merge
- 下一篇: (原+转)ubuntu终端输出彩色文字