unity场景切换崩溃如何恢复崩溃前

编辑器扩展,unity崩溃 - Unity - A计划(永久有效期) - SiKi学院 - 生命不息,学习不止!为了账号安全,请及时绑定邮箱和手机
一点运行,unity工具就崩溃呢,console好像报错了
完全按照老师的步骤,一点三角箭头运行,Unity工具就崩溃了。。。。
写下你的评论...
写下你的评论...
写下你的评论...
Copyright (C) 2018 imooc.com All Rights Reserved | 京ICP备 号-11& &今天在Unity3D编辑器中进行功能测试的时候,编辑器突然崩溃了(就是整个窗口突然消失,进程直接结束)之后也没有任何错误报告信息提示。好吧,应该是偶现问题,我侥幸地想,我用的好歹也是正版啊,不应该总出这种莫名其妙的问题吧。
& & & &再次进行同样的功能测试,编辑器又崩溃了,依然没有任何错误报告,这让我想进行调试都无从调起。想想有什么线索吧,突然想起编辑器在硬盘上也是有log输出的,在崩溃的时候,如果已经进行了错误log输出,那么就可以找到崩溃的线索。在磁盘上翻了下,最后在以下目录找到了log文件:
& & & &&C:\Documents and Settings\xxxx(用户名)\Local Settings\Application Data\Unity\Editor,里面有两个文件:
& & & & Editor.log&&察看了下内容,属于编辑器在编辑阶段的log输出,主要是编译时产生dll信息,warning和错误。
& & & & Editor-prev.log&&这个是运行期的log输出,包括了开发者自己调用Debug.log函数族所输出的信息,以及Mono本身的运行时异常信息
& & & & 在Editor-prev.log中终于有所发现:
& & & &&StackOverflowException: The requested operation caused a stack overflow. & at System.Convert.ToInt32 (Double value) [0x00000] in &filename unknown&:0& & at Test.Scan (Int32 _depth, Int32 _octant, Double _startSlope, Double _endSlope) [0x00041] in & & F:\TestDemo\Assets\Test.cs:384&
& & & & 就是栈溢出了,看了下Scan函数,是个递归函数,确实会造成栈溢出,走读了下代码,崩溃得以解决。我在想,为什么诸如NullReference之类的异常不会导致Unity3D编辑器崩溃,而栈溢出会导致呢?还是说并非所有的栈溢出异常都回导致编辑器崩溃呢?
小结:当编辑器崩溃无法察看console上的输出信息时,可以到硬盘的目录下寻找线索:
& & & & C:\Documents and Settings\xxxx(用户名)\Local Settings\Application Data\Unity\Editor
阅读(...) 评论()从崩溃的实例恢复您的场景您的Unity项目遇到过崩溃嘛?你已经有一段时间没有保存你的场景了吗?不要担心!您仍然可以从临时目录恢复它!Unity3D可能会经常崩溃。Unity API提供了我们开发巨大的自由,但代价是不是特别的稳定。如果Unity在你的项目身上崩溃了,而你却没有在一段时间里拯救你的场景,该怎么办?这很简单,但是在完成这些步骤之前,不要启动Unity3D。转到项目文件夹。进入Temp文件夹。查找名为__EditModeScene的文件。 这是编辑器保存的场景文件。将其重命名为your_scene_name.unity,并将其移动到您的Assets文件夹。现在可以运行您的Unity3D实例了!
扫码向博主提问
非学,无以致疑;非问,无以广识
擅长领域:
从崩溃的Unity3D实例恢复您的场景
从崩溃的实例恢复您的场景
您的Unity项目遇到过崩溃嘛?你已经有一段时间没有保存你的场景了吗?不要担心!您仍然可以从临时目录恢复它!
Unity3D可能会经常崩溃。Unity...
unity如何恢复崩溃前的Scene
unit有时会遇到unity崩溃后,辛辛苦苦做的场景就这么没了的情况,这种情况非常忧伤的,其实unity是提供了一种拯救场景的措施的;
首先unity崩溃后不要重新打开unity,切记,不然就之...
【Unity3d】导入包材质缺失的补救方法(纯转载)
1.在model中勾选Impor Materials
2.在Material Naming 项中选择From Model's
3.最后点击Apply...
Unity死机未保存场景怎么办
Unity死机未保存场景:当你在Unity中编辑场景,突然死机时,可以在项目文件目录中找到Temp文件夹,双击文件夹,找到_Backupscenes文件夹,把后缀为.backup的文件后缀改为.uni...
Unity3D-场景切换&场景间信息传递
我在用Unity3D做一个回合制的战斗游戏,有两个场景(小镇的场景和战斗的场景),每当角色遇到怪兽,游戏就切换到战斗场景,角色就在这里战斗,直到打败怪兽或者被击败。
问题是怎...
Unity3D开发(三):场景管理插件Scene Manager
Unity3d中提供了场景Scene的概念,Scene就是一组相关联的游戏对象的一个集合,通常每个集合就是一个场景,但是也有可能只是一个场景的一部分!
场景中的游戏对象是任意的,可以是HUD的UI组件...
unity 场景自动保存
最近发现Unity老有自动崩溃的BUG。 每次崩溃的时候由于项目没有保存所以Hierarchy视图游戏对象与游戏资源的关系就会丢失。所以想到自动保存场景。
本来想自己写一个这样的脚本,但是发现维...
&em&Unity&/em& 实现更换材质球时的颜色渐变效果 立即下载
上传者: lsq126yx 时间:
综合评分: 0 积分/C币:3
&em&unity&/em&金属&em&材质包&/em& 立即下载
上传者: 黄庆...
没有更多推荐了,此贴会持续更新,都是项目中常会遇到的问题,总结成贴,提醒自己和方便日后检查,也能帮到有需要的同学。
若各位有啥好BUG好异常好警告好崩溃可以分享的话,请多多指教。xuzhiping7#qq.com。
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中文显示解决方法:
http://www.cocoachina.com/bbs/read.php?tid-78563.html
中文Mac系统下MonoDevelop乱码解决:
http://blog.csdn.net/ssihc0/article/details/6796118
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_5b6cbipi.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加载和内存管理机制之二:进一步深入和细节】
国外论坛的讨论:
http://forum.unity3d.com/threads/49298-Trying-to-reload-asset-from-disk-that-is-not-stored-on-disk
貌似老外也没完全确切搞定这个。
错误提示:Deleting persistent object without writing it first
不论如何你都不应该直接修改一个从assetbundle加载进来的最初数据,一般都要先实例化出来再对其修改。但是引用的东西(例如mesh),这些也不能修改它。若要修改的话,则先复制一份出来。
//复制一份模型出来重新复制,以免直接修改被引用的镜像模型。如下:
Mesh temp = Mesh.Instantiate(smr.sharedMesh) as M
myMesh.sharedMesh =
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盘根目录。
14.效率调优报错
错误提示:Non matching Profiler.EndSample (BeginSample and EndSample count must match)
解决方式:
15.IOS下JIT错误问题、编译错误、调试错误
IOS下JIT错误是比较常见的,因为IOS不支持JIT动态编译,所以需要改为合适的AOT静态编译。
错误提示:Attempting to JIT compile method 'System.Linq.OrderedEnumerable`1&:GetEnumerator ()' while running with --aot-only.
解决方式:
关于使用了LINQ字典排序的错误解决方法
错误提示:Installation of apps is prohibited by a policy on the device
解决方式:打开一个开关,允许在安装APP,在“设置-》通用-》访问限制-》安装应用程序” 这。
16.U3D寻路信息错误
错误提示:"XXXX" can only be called on an active agent that has been placed on a NavMesh.
解决方式:角色或怪物生成时要直接给模型赋值到相应的地形位置上。因为开始寻路组建没有获取到正确配置而一直报错。
17.Assetbundle资源版本不对
团队协作有时候可能会有人用的U3D版本与其他人不一样,这个是要求先协定好的。大家要用同样的版本作为开发基础。
解决方式:关于assetbundle的问题,4.1版本打出来的包,在4.2读取是不适应的。得注意打包的环境。
unity项目崩溃且无任何报错信息显示
我在c盘目录下找到了editor.log文本,查看它运行崩溃后的信息(editor.log的文件路径为C:\Users\xxx用户名\AppData\Local\Unity\Editor),
Unity3D在windows10下小问题解决
unity3d程序开发,在windows 10下会遇到一些奇怪的问题。例如找不到命名空间和中文注释无法显示。
无法找到命名空间
如下图,基本的unityEngine都提示错误。
Unity Mono异常崩溃Assertion at mini-arm.c:2634,
condition `pdata.found == 1' not met
随着项目越来越大,碰到的很难解决的Bug也越来越多了。两个月之前,偶然发现游戏APK打开的时候会抛出错误然后崩溃:03-08 12:21:18.201: A/mono(6873): * Asserti...
如何查Unity3D编辑器崩溃原因
排查Unity3D编辑器崩溃原因,定位有问题的代码。
[Unity]编辑器中第一次结束游戏后第二次开始游戏崩溃的问题
最近在使用unity编辑器的过程中,总是遇到第二次运行游戏unity直接crash的问题,甚为苦恼。
经反复试验,发现在第一次游戏结束后,在编辑器模式下切换一下场景再切换回开始场景后运行游戏能顺利执...
没有更多推荐了,

我要回帖

更多关于 unitybugly崩溃 的文章

 

随机推荐