开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

开发者专栏

关注:2102

当前位置:游戏蛮牛 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 3414|回复: 77

[刘国柱] Unity4.x/5.x/2017.x升级差异总结

[复制链接]  [移动端链接]

15

主题

52

帖子

644

积分

Rank: 9Rank: 9Rank: 9

UID
34511
好友
30
蛮牛币
871
威望
0
注册时间
2014-7-15
在线时间
287 小时
最后登录
2018-2-12

专栏作家

发表于 2017-12-3 11:05:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
Unity4.x/5.x/2017.x升级差异总结
目前整理Unity4.x项目升级.x以及Unity2017.x 过程中出现的各种常见异常问题,与大家经验共享。按照问题出现的版本分为Unity5.x 升级到Unity2017.x以及Unity4.x升级到Unity5.x两种情形进行总结:

  • Unity5.x升级 Unity2017.x容易出现的问题:
问题1:Unity开发导航寻路的源代码中原本定义的”NavMeshAgent” 类,系统已经不再识别?
  解答:
  应该是从Unity5.6以上版本,导航寻路中的大量API类,已经封装到新的命名空间“UnityEngine.AI”下。也就是说程序开头使用Using 导入命名空间UnityEngine.AI即可。

问题2:  项目升级到Unity2017.x过程中,源代码中的“Application.LoadLevelAsync()”(也包括“Application.LoadLevel()”)系统提示已经过时, 如何处理?
  解答
这个问题应该是Unity5.3以上版本就已经发生了变化。以上脚本可以通过导入“UsingUnityEngine.SceneManagement”命名控件,然后改为如下代码:
    SceneManager.LoadSceneAsync("");//异步场景转换
     SceneManager.LoadScene("");    //同步场景转换

问题3:项目升级到Unity2017.x导航寻路失效,不再有反应?
  解答
Unity5.6之后的版本,其导航寻路的底层API做了重写,所以原本导航寻路的NavMesh 是需要重新做导航烘焙才可解决。


问题4:项目升级到Unity2017.x后,烘焙的场景变得格外高亮(不正常)?
   解答
Unity2017.x 的光影系统内部Shader等算法进一步优化与改善,所以在Unity5.x 中烘焙的场景应该再次重新烘焙,就可显示正常光影效果。



  • Unity4.x 升级Unity5.x容易出现的问题:
问题1:Unity4.x 项目升级到Unity5.x中, 3D模型其材质丢失,成为“白模”?
  解答
Unity5.x(包含Unity2017.x)中对于材质采用基于物理着色(PBS)的材质系统,所以3D模型升级后需要手工重新赋值材质与贴图等。
问题2:Unity4.x 项目中的NavMesh升级报错:“NavMesh assetformat has changed. Please rebake the NavMeshdata.”?
解答
  按照字面含义,重新对静态物体进行新的导航烘焙即可。
问题3:Unity4.x 项目天空盒子升级后显示混乱?
  解答
     找到项目中“标准资源”(StandardAssets),点击天空盒子的材质,出现提示信息“This texture contains alpha, but is notRGBM(Incompatible with HDR[高动态光照渲染])”点击“Fix Now”进行自动修复即可。。
问题4:Unity4.x 在升级后出现某些3D模型不显示的“严重”问题?
   解答
由于Unity5.x与Unity4.x版本的底层编码变化较大,Unity5.x已经不能正确识别部分老“预设”,从而造成不显示问题。此时我们找到对应模型的“原型”3D模型,重新建立“预设”在场景中的原位置进行重新加载即可。(注意与原来的方位需要一致才可以)。
问题5:Unity4.x 项目升级后部分动画失效(即:不动没有反应)?
  解答
     我们把Animation动画在Unity5.x中重新编辑与应用即可。
问题6:Unity4.x 的布料模拟升级到Unity5.x无法应用,也找不到原来的组件了?
  解答
Unity5.x(包含Unity2017.x)中废弃了Interactive Cloth 与Cloth Renderer组件,转而使用Cloth与Skinned MeshRederer 组件代替。(注:详情请查阅本书籍11.5.5章节)



  • 脚本问题汇总, 由于脚本升级过程中造成的各种异常现象汇总如下:
  • 光标锁定脚本
Screen.lockCursor = true;//Unity4.x传统写法
Cursor.lockState =CursorLockMode.Locked;//Unity5.x(2017.x)等价替换

2. 脚本AddComponent()、GetComponent() 问题
例如1:
GoNeedAddScriptsObj.AddComponent("类名称");// Unity4.x传统写法
       GoNeedAddScriptsObj.AddComponent<DynamicAddScripts>();//必须用泛型代替。
例如2:
GoCreatObj.Renderer.Material.color=Color.red;//Unity4.x传统写法
  GoCreatObj.GetComponent<Renderer>().material.color= Color.red//Unity5.x(2017.x)等价替换
例如3:
AddComponent(“脚本字符串”);Unity4.x 中这种API写法,可以实现动态加载脚本功能。而到了Untiy5.x 被否决禁止使用,替代写法如下: GoNeedObj.AddComponent(System.Type.GetType(“脚本字符串”);

3.  脚本Animation播放动画问题
例如:
this.animation.Play("xxx"); //Unity4.x传统写法
         this.GetComponent<Animation>().Play("xxx");// Unity5.x(2017.x)等价替换


4.脚本刚体组件写法
例如:
         con.gameObject.collider.xx(); // Unity4.x传统写法,已经被否决。
         con.gameObject.GetComponent<Collider>().xxx();//Unity5.x(2017.x)等价替换
  5. 关于AssetBundle错误信息
     报错信息: “UnityEngine.AssetBundle.Load(string)' is obsolete: `MethodLoad has been deprecated. Script updater cannot update it as theloading behaviour has changed. Please use LoadAsset instead andcheck the documentation for details.”
        解答:分析以上错误信息表明AssetBundle.Load(“”) 这个API已经否决不再允许使用。替代写法是:AssetBundle.LoadAsset (“”)


最后是广而告之时间:
    个人17年著作《Unity 3D / 2D 游戏开发从0到1(第二版)》,预计2018年1月全国发行(当当、京东、亚马逊以及全国新华书店有售),请感兴趣小伙伴们给予关注。

(低分辨率小图)书籍第二版本3D立体效果图.jpg




评分

参与人数 1鲜花 +2 收起 理由
云鬓刺影 + 2 很给力!

查看全部评分


回复

使用道具 举报

排名
56054
昨日变化
8

0

主题

4

帖子

8

积分

Rank: 1

UID
257588
好友
0
蛮牛币
9
威望
0
注册时间
2017-12-3
在线时间
2 小时
最后登录
2017-12-14
发表于 2017-12-4 00:03:08 | 显示全部楼层
积分不够!回复来凑

回复 支持 反对

使用道具 举报

排名
4608
昨日变化

3

主题

284

帖子

760

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
9527
好友
3
蛮牛币
409
威望
0
注册时间
2013-12-3
在线时间
214 小时
最后登录
2018-1-17
发表于 2017-12-4 02:08:35 | 显示全部楼层
谢谢楼主分享 感谢

回复 支持 反对

使用道具 举报

7日久生情
2517/5000
排名
3691
昨日变化

2

主题

1840

帖子

2517

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
241666
好友
0
蛮牛币
10028
威望
0
注册时间
2017-9-6
在线时间
341 小时
最后登录
2018-2-21
发表于 2017-12-4 06:43:58 来自Mobile--- | 显示全部楼层
感谢分享

回复

使用道具 举报

5熟悉之中
755/1000
排名
5421
昨日变化
1

4

主题

344

帖子

755

积分

Rank: 5Rank: 5

UID
239879
好友
0
蛮牛币
1256
威望
0
注册时间
2017-8-26
在线时间
195 小时
最后登录
2018-2-9
发表于 2017-12-4 08:33:47 | 显示全部楼层
支持一下 来学习学习

回复 支持 反对

使用道具 举报

7日久生情
2265/5000
排名
514
昨日变化
2

0

主题

495

帖子

2265

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
88896
好友
0
蛮牛币
8603
威望
0
注册时间
2015-4-2
在线时间
474 小时
最后登录
2018-2-21
发表于 2017-12-4 08:34:14 | 显示全部楼层
谢谢分享

回复

使用道具 举报

7日久生情
3790/5000
排名
4178
昨日变化
2

5

主题

3129

帖子

3790

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
209186
好友
5
蛮牛币
4574
威望
0
注册时间
2017-3-1
在线时间
366 小时
最后登录
2018-1-26
发表于 2017-12-4 08:46:27 | 显示全部楼层
谢谢分享

回复

使用道具 举报

4四处流浪
321/500
排名
8155
昨日变化

1

主题

77

帖子

321

积分

Rank: 4

UID
252095
好友
1
蛮牛币
225
威望
0
注册时间
2017-11-2
在线时间
123 小时
最后登录
2018-2-10
发表于 2017-12-4 08:58:56 | 显示全部楼层
不错的正好解决一些版本问题

回复 支持 反对

使用道具 举报

5熟悉之中
794/1000
排名
3626
昨日变化

0

主题

202

帖子

794

积分

Rank: 5Rank: 5

UID
203671
好友
1
蛮牛币
1458
威望
0
注册时间
2017-1-20
在线时间
256 小时
最后登录
2018-2-9
发表于 2017-12-4 09:45:27 | 显示全部楼层
6666666666666

回复

使用道具 举报

5熟悉之中
969/1000
排名
2459
昨日变化

0

主题

294

帖子

969

积分

Rank: 5Rank: 5

UID
179635
好友
1
蛮牛币
1375
威望
0
注册时间
2016-10-31
在线时间
178 小时
最后登录
2018-2-1
发表于 2017-12-4 09:57:21 | 显示全部楼层

积分不够!回复来凑

回复 支持 反对

使用道具 举报

3偶尔光临
281/300
排名
8310
昨日变化
2

0

主题

74

帖子

281

积分

Rank: 3Rank: 3Rank: 3

UID
229553
好友
0
蛮牛币
676
威望
0
注册时间
2017-6-30
在线时间
91 小时
最后登录
2018-2-9
发表于 2017-12-4 10:37:24 | 显示全部楼层
刚好解决了一些问题

回复 支持 反对

使用道具 举报

7日久生情
2203/5000
排名
647
昨日变化

0

主题

294

帖子

2203

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
33368
好友
2
蛮牛币
3270
威望
0
注册时间
2014-7-9
在线时间
743 小时
最后登录
2018-2-8
发表于 2017-12-4 10:54:05 | 显示全部楼层
666666666666

回复

使用道具 举报

6蛮牛粉丝
1297/1500
排名
1613
昨日变化
1

1

主题

143

帖子

1297

积分

Rank: 6Rank: 6Rank: 6

UID
132507
好友
0
蛮牛币
1995
威望
0
注册时间
2015-12-24
在线时间
468 小时
最后登录
2018-2-13
发表于 2017-12-4 13:45:25 | 显示全部楼层
感谢分享

回复

使用道具 举报

5熟悉之中
767/1000
排名
4067
昨日变化

0

主题

222

帖子

767

积分

Rank: 5Rank: 5

UID
227843
好友
1
蛮牛币
2116
威望
0
注册时间
2017-6-20
在线时间
249 小时
最后登录
2018-2-3
发表于 2017-12-4 13:56:50 | 显示全部楼层
6666666666666666666666666

回复 支持 反对

使用道具 举报

5熟悉之中
572/1000
排名
7638
昨日变化

0

主题

317

帖子

572

积分

Rank: 5Rank: 5

UID
146677
好友
9
蛮牛币
2226
威望
0
注册时间
2016-4-25
在线时间
121 小时
最后登录
2018-2-5
QQ
发表于 2017-12-4 14:25:44 | 显示全部楼层
虽然都已经了解,坑也踩过了,但是从未总结过,看来有时间我也要写博客了

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

关闭

站长推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表