unity中从Resources下unity 读取文件大小较大的资源会卡,有解决办法么

Unity 数值太大导致场景加载卡死问题
在项目制作过程中遇到了个很蛋疼的问题——场景加载卡死。这个问题让项目一个同学查了好久都没真正查出来,各种纠结。而且这bug还不是必现的,有时候抽风一下在某台电脑能重现,有时候又一点问题都没有,隔三差五的冒出来刷一点存在感。
后面安排我一起来查这个问题,可能是那天运气比较好吧,搞了一下午,突然间发现有个gameObject的配置文件数据有很大的问题,它的scale的y值竟然高达e^21 !!!虽然我们项目做的是编辑器,能够对物体进行放大缩小操作,不过这个值绝对也是不正常的,是相关功能的程序员没做最值保底,然后某个操作引起的数值异常并保存到了配置文件中。我们把这个数值改回到正常值后,场景卡死问题果真就没再出现过了。
不过故事还没结束,大概过了半个月,在发版本的前一天下午,突然出现了摄像机在loading的时候疯狂往下掉的问题,碰撞设置一直没改过,而且也确认了没问题,各种可能的设置也都尝试过了,依然无法解决。
最后尝试通过二分法来删除副本配置(大几百个对象),一步步终于定位到了某个gameObject,加载完后在Unity的Hierarchy中双击它,竟然无法显示!再看它的Inspector界面大致如下图:
在Transform下面的面板有个Warning提示,大概意思是:由于浮点数的精度限制,建议把GameObject的世界坐标控制在一个更小的范围内。初看很令人不解啊,只不过小数点后多了几位,不至于这样吧,接下来我们再看一Inspector的拉宽图:
我次噢,y值不是2.3******,竟然是2.
!!!与Scale问题如出一辙。
unity在这方面也是挺坑的,都已经知道有可能产生问题了,却没有任何的提示,只有在Hierarchy中点击到了它,才能看的到警告。而且打出来的包,竟然还出现这么严重的问题,估计是处理数据的那帧发生了异常,导致后续某些关键流程没执行引起的。
这个问题也已经反馈给Unity官方,希望在以后的版本能修复吧。
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!15:42 提问
unity3d中资源加载问题
我用 Resources.Load ()加载预物体的时候,在Hierarchy面板一个预物体会复制两次,求大神告知这是为什和如何解决。 Resources 文件夹中相对应只有一个预物体,在Hierarchy面板中也删除了相应要加载的实例。
下面时我的代码:
/// 初始化菜单界面:倍数场的选择
public void InitMenu()
GameObject menu = NGUITools.AddChild (UICamera.mainCamera.gameObject,(GameObject)Resources.Load("MainMenu"));
menu.AddComponent ();
menu.transform.Find ("hintLabel").gameObject.SetActive(false);
using System.C
using System.Collections.G
using UnityE
using UnityEngine.UI;
public class Main : MonoBehaviour
//单倍场按钮
private GameObject mulB
//双倍场按钮
private GameObject doubleMulB
void Start()
mulBtn = gameObject.transform.Find ("multiples").gameO
UIEventListener.Get (mulBtn).onClick += new UIEventListener.VoidDelegate (mulBtnHandler);
doubleMulBtn= gameObject.transform.Find ("doublemultiples").gameO
UIEventListener.Get (doubleMulBtn).onClick += new UIEventListener.VoidDelegate (doubleMulBtnHandler);
controller = GameObject.Find("LevelController").GetComponent&LevelController&();
/// &summary&
/// 进入游戏按钮:进入下一个倍数选择界面
/// &/summary&
void mulBtnHandler(GameObject go)
void doubleMulBtnHandler(GameObject go)
按赞数排序
NGUITools.AddChild 这个方法的代码呢?
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐unity中从Resources下读取较大的资源会卡,有解决办法么_百度知道
unity中从Resources下读取较大的资源会卡,有解决办法么
我有更好的答案
设置读取小资源,得找人写程序吧? 传感器(英文名称:transducer/sensor)是一种检测装置,能感受到被测量的信息,并能将感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Resources里的图片太多导致Unity启动很慢,有解决办法吗? - 知乎有问题,上知乎。知乎作为中文互联网最大的知识分享平台,以「知识连接一切」为愿景,致力于构建一个人人都可以便捷接入的知识分享网络,让人们便捷地与世界分享知识、经验和见解,发现更大的世界。3被浏览239分享邀请回答暂时还没有回答,开始写第一个回答unity中从Resources下读取较大的资源会卡,有解决办法么_百度知道
unity中从Resources下读取较大的资源会卡,有解决办法么
我有更好的答案
用AssetBundle试试,实在不行自己设计文件格式,用文件流读取。
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 unity3d 资源读取 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信