unity4——unity5升級過程中常見問題

 最近整理Unity4.x 項目升級Unity5.0 過程中出現的各種常見問題,與大家共享。


  1:Unity4.x 項目中3D模型其材質丟失,成爲“白模”?
      解決方案:手工重新賦值材質貼圖。


  2:Unity4.x 項目中的NavMesh 升級報錯?
     “NavMesh asset format has changed. Please rebake the NavMesh data.” ?
     解決方案:按照字面含義,重新對靜態物體進行烘焙即可。


  3:Unity4.x 天空盒子升級後顯示混亂?
     解決方案: 找到項目中“標準資源”(Standard Assets),點擊天空盒子的材質,出現提示信息“This texture contains alpha, but is not RGBM(Incompatible with HDR[高動態光照渲染])”點擊“Fix Now”進行自動修復即可。
     
  4:Unity4.x 在升級後出現某些3D模型不顯示的“嚴重”問題?
     解決方案: 由於Unity5.0 與Unity4.x版本的底層編碼變化較大,Unity5.0已經不能正確識別部分老“預設”,從而造成不顯示問題。此時我們找到對應模型的“原型”3D模型,重新建立“預設”在場景中的原位置進行重新加載即可。(注意與原來的方位需要一致纔可以)。

  5:Unity4.x 項目升級後部分Animation動畫失效(不動沒有反應)?
     解決方案:基本原理同上題,我們把Animation動畫在Unity5.0中重新編輯與測試即可。
     
  6: 由於腳本升級過程中造成的各種異常現象?
      例如:跑酷、射擊、RPG等遊戲中的英雄對輸入信息沒有反應,射擊與攻擊無效等。
      解決方案: 造成以上問題的直接或者間接原因多數是腳本的升級造成的問題,詳細整理如下:
    6.1>://Screen.lockCursor = true; //被Unity5 新腳本代替
    Cursor.lockState = CursorLockMode.Locked;  
    
    6.2>://GoNeedAddScriptsObj.AddComponent("類名稱");//被Unity5 新腳本代替
    GoNeedAddScriptsObj.AddComponent<DynamicAddScripts>();//必須用泛型代替。 
     
    6.3> //goCreatObj.Renderer.Material.color=Color.red;//老寫法已經作廢。
       goCreatObj.GetComponent<Renderer>().material.color = Color.red

 

    6.4> //this.animation.Play(); //寫法禁用了
       this.GetComponent<Animation>().Play("Walking"); //Unity5自動更正。 
    
    6.5> //con.gameObject.collider.xx;//否決
       con.gameObject.GetComponent<Collider>().xxx;

 

     7:關於AssetBounds錯誤信息:
     “UnityEngine.AssetBundle.Load(string)' is obsolete: `Method Load has been deprecated. Script updater cannot update it as the loading behaviour has changed. Please use LoadAsset instead and check the documentation for details.”

    解決方案:

    WWW downloadAsset = new WWW(path);

    //等待下載完成
    yield return downloadAsset;

    //加載複合對象,且通過名稱把他們讀取出來  
    //GameObject goPrefabs1= (GameObject)downloadAsset.assetBundle.Load("Prefabs_SelfRotationCube");   GameObject goPrefabs1 = (GameObject)downloadAsset.assetBundle.LoadAsset("Prefabs_SelfRotationCube");//Unity5方式。


 

 

本文出自 “劉老師講Unity” 博客,請務必保留此出處

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章