1.U3D经常莫名奇妙崩溃。
 
一般是由于空异常造成的,多多检查自己的引用是否空指针。
 
2.编码切换警告提示。
 
警告提示:Some are Mac OS X (UNIX) and some are Windows.
This might lead to incorrect line numbers in stacktraces and compiler errors. Many text editors can fix this using Convert Line Endings menu commands.
编码格式问题,VS的话直接高级保存方案里面修改,一般我选的是UNICODE(UTF8代签名)MACINTOSH(CR),WINDOW下的可以选WINDOWS的格式,两边都要用的话,推荐选CR。
 
BUG:IOS下,游戏中的中文显示乱码。
解决方式:同上,修改改代码页的编码。UNICODE(UTF8代签名)MACINTOSH(CR)
 
3.中文界面解决问题。
 
monodevelop中文显示解决方法:
中文Mac系统下MonoDevelop乱码解决:
 
4.安装空项目报错
 
不知道怎么地,在IOS试过一次空项目也在错误提示。大概是说什么“找不到需要的方法”。
重装一下就好了,估计是UNITY文件损坏或者安装不完全出错了。重装吧。
 
错误提示:MissingMethodException: Cannot find the requested method.
 
估计是破解U3D造成的,该破解文件可能是不支持WIN7下的……
 
解决方法:
1、换正版。
2、换个破解文件。
 
5.平台编译错误或库引用缺失
 
错误提示:error CS1061: Type `System.IO.FileInfo' does not contain a definition for `Delete' and no extension method `Delete' of type `System.IO.FileInfo' could be found (are you missing a using directive or an assembly reference?)
 
出了这个错误一般有两个原因了。
1.没有引用相关的库。
2.选错编译平台。(BuildSetting里面的Platform)
 
错误提示:Could not start compilationWin32Exception:ApplicationName="XXXX\mono.exe",……

解决方式:重装UNITY3D。
 
 
6.内存资源加载错误问题
 
错误提示:Trying to reload asset from disk that is not stored on disk
 
个人是在加载多个ASSETBUNDLE时,用了释放镜像之后,发生了下面的BUG。
这个警告它并没有对游戏流程有任何影响,不过一直跳出来很烦人。我们项目中是因为用Dictionary删除的时候没有删除完整导致的。
 
解决方案参考:http://blog.sina.com.cn/s/blog_5b6cb95001019ipi.html
 
个人认为比较大可能是下面的原因:
 
还没释放完镜像再次加载就出BUG了。将所有ASSETBUNDLE加载完后再同一释放,这样就没问题了。
 
Unity will only allow you to have a single instance of a particular AssetBundle loaded at one time in your application. What this means is that you can't retrieve an AssetBundle from a WWW object if the same one has been loaded previously and has not been unloaded. In practical terms it means that when you try to access a previously loaded AssetBundle like this:
(BY :http://docs.unity3d.com/Documentation/Manual/keepingtrackofloadedassetbundles.html)
 
 
查阅了一下,貌似还有别的问题能导致这提示。下面是相关可以继续深入的资料,可以帮助大家理解U3D的加载和内存管理:
百度搜一下下面两篇文章,应该是出自圣典论坛:
1.【全面理解Unity加载和内存管理】
2.【全面理解Unity加载和内存管理机制之二:进一步深入和细节】
 
国外论坛的讨论:
 
貌似老外也没完全确切搞定这个。
 
 
错误提示:Deleting persistent object without writing it first
 
不论如何你都不应该直接修改一个从assetbundle加载进来的最初数据,一般都要先实例化出来再对其修改。但是引用的东西(例如mesh),这些也不能修改它。若要修改的话,则先复制一份出来。
 
//复制一份模型出来重新复制,以免直接修改被引用的镜像模型。如下:
Mesh temp = Mesh.Instantiate(smr.sharedMesh) as Mesh;
myMesh.sharedMesh = temp;
 
 
7.时间错误、NaN错误
 
错误提示:transform.position assign attempt for 'XXX' is not valid。Input rotation is {NaN, NaN, NaN, NaN}.
 
一般是由于游戏暂停将timescale设为0引起的,需要寻找相应用了Time.deltTime等参数的函数修改。否则会导致计算出错报空异常。
 
详细解决看另一篇文章:
关于NaN(Not a Number)的问题 
 
 
8.动画错误
这个错误是4.0新引进动画系统才出现的。
错误提示:Mecanim: BindSkeleton: Cannot find transform"objectname"
 
解决方式:
1.找到该对应transform"objectname"的模型,直接在检索面板搜索所有相应名字,能容易找到。
2.将模型的面板的Rig部分的动画AnimationType改为none
 
9.坐标系向量计算的错误提示
错误提示:Look rotation viewing vector is zero
 
解决方式:一般是由于摄像机的旋转角度造成的。也可能是向量的计算多余而系统提示。我们项目中是强制摄像机90度的时候出现,改成89.9度就没问题了。
 
具体还有的参考U3D官方论坛:
若没找到解决方法再搜索下。
 
10.关于AssetServer
错误:明明上传了所有修改,但是别人的机子却没有下载带最新代码。
 
原因:Merge完代码之后,操作了ignore server change,UNITY默认是以你本机子的为准,若此代码没有再次修改,则AssetServer不认为这个东西被修改过,没有上传那代码。
 
解决方式:打个空格重新保存一下该代码。
 
11.关于数据格式的错误
 
错误提示:Illegal JSON sequence
 
 
12.导出WINDOS平台下的项目运行不成功
 
错误提示:没有找到相应assetbundle的路径
解决方式:因为用了assetbundle加载,而游戏在有中文路径下,assetbundle的路径不能有中文。换个无中文的目录即可。从根源上能解决的方案现在暂时没有。
 
 
13.导入资源出错
 
错误提示:Error while importing package :Couldn't decompress package
解决方式:导入资源出错,大部分都是中文路径惹的祸。将资源换到无中文路径试试。如C/D盘根目录。

原文地址 : http://blog.sina.com.cn/s/blog_5b6cb9500101ai9h.html

[转][Unity3D]引擎崩溃、异常、警告、BUG与提示总结及解决方法的更多相关文章

  1. 引擎崩溃、异常、警告、BUG与提示总结及解决方法

    http://www.58player.com/blog-635-128.html [Unity3D]引擎崩溃.异常.警告.BUG与提示总结及解决方法   此贴会持续更新,都是项目中常会遇到的问题,总 ...

  2. Unity3D]引擎崩溃、异常、警告、BUG与提示总结及解决方法

    此贴会持续更新,都是项目中常会遇到的问题,总结成贴,提醒自己和方便日后检查,也能帮到有需要的同学. 若各位有啥好BUG好异常好警告好崩溃可以分享的话,请多多指教.xuzhiping7#qq.com. ...

  3. [Unity3D]引擎崩溃、异常、警告、BUG与提示总结及解决方法

    1.U3D经常莫名奇妙崩溃.   一般是由于空异常造成的,多多检查自己的引用是否空指针.   2.编码切换警告提示.   警告提示:Some are Mac OS X (UNIX) and some ...

  4. string.Format出现异常"输入的字符串格式有误"的解决方法

    string.Format出现异常"输入的字符串格式有误"的解决方法 今天在做项目时,碰到一个很奇怪的问题,我使用string.Format居然报“输入的字符串格式有误”的错误,我 ...

  5. WIN10下微信崩溃(已经是最新版)的解决方法

    微信运行错误---------------------------你的微信崩溃次数较多,建议使用最新版本,点击"确定"到官网(http://pc.weixin.qq.com/)下载 ...

  6. vs2015 系统找不到指定的文件(异常来自HRESULT:0x80070002)问题的解决方法

    vs2015 创建mvc项目时,弹出错误信息内容(系统找不到指定的文件(异常来自HRESULT:0x80070002)) 弹出窗体如下图所示: 导致整个原因是:未安装NuGet包 解决方法: 1)打开 ...

  7. 异常 A component named TableViewForm already exists 解决方法

    用navicate连接mysql,打开数据库表格,出现 A component named TableViewForm already exists  异常信息,如下图: 1.异常原因: 打开的表格数 ...

  8. ecshop退出登录会清空购物车的bug优化,最完美解决方法

    ecshop退出登陆后,会清空购物车,大家都应该知道有这样的勉强算bug的问题. 网上类似的教程相当多,但都有问题,说句不好听的,算是引新手入歧途! 总结网上方法如下: 1.修改init.php,把s ...

  9. c# 无法加载 DLL xxxxxxxx找不到指定的模块。 (异常来自HRESULT:0x8007007E)。的一个解决方法

    最近在做一个程序,想把某些功能用C++写成DLL供C#调用.但是无法如何都无法调用,提示"无法加载 DLL xxxxxxxx找不到指定的模块. (异常来自HRESULT:0x8007007E ...

随机推荐

  1. 分布式基础学习【二】 —— 分布式计算系统(Map/Reduce)

    二. 分布式计算(Map/Reduce) 分布式式计算,同样是一个宽泛的概念,在这里,它狭义的指代,按Google Map/Reduce框架所设计的分布式框架.在Hadoop中,分布式文件系统,很大程 ...

  2. 性能优化之_android多线程

    本文大纲为: 如何创建线程 线程间如何通讯 线程间如何安全的共享信息 一.线程的创建 Thread在run方法中执行具体事务,或者传入一个runnable对象,但是不能调用view控件的更新方法,但是 ...

  3. 用CSS3.0画圆

    CSS3.0中有一个border-radius属性,这个属性允许向 div 元素添加圆角边框,也就是div边角不再一直是直角,在CSS3.0中可以做成圆角了,所以我们可以用这个属性用div画一个圆,或 ...

  4. 如果你的资源贫乏,那么专注做好一件事将是你的唯一出路(no reading yet)

    http://www.jianshu.com/p/8784f0fd7ab8/comments/1161511

  5. Entity Framework 6.0 Tutorials(3):Code-based Configuration

    Code-based Configuration: Entity Framework 6 has introduced code based configuration. Now, you can c ...

  6. 6.python探测Web服务质量方法之pycurl模块

    才开始学习的时候有点忽略了这个模块,觉得既然Python3提供了requests库,为什么多此一举学习这个模块.后来才发现pycurl在探测Web服务器的时候的强大. pycurl是一个用c语言写的l ...

  7. 使用dom解析器对xml文档内容进行增删查改

    直接添代码: XML文档名称(one.xml) <?xml version="1.0" encoding="UTF-8" standalone=" ...

  8. vs2012 许可 tfs 许可

    Team Foundation Server 2012序列号或MSDN版本 BVGTF-T7MVR-TP46H-9Q97G-XBXRB VS2012注册码 亲测成功.我的是旗舰版... YKCW6-B ...

  9. jQuery高级

    一.动画效果 常用的几种效果都是没有easing参数的,也即动画只能swing.$(selector).animate(styles,speed,easing,callback)中是有easing参数 ...

  10. 类的 where T : class 泛型类型约束

    where T : struct | T必须是一个结构类型where T : class T必须是一个类(class)类型where T : new() | T必须要有一个无参构造函数where T ...