Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance 如何在Unity3D中优化场景加载_Performance_Unity3d_Loading - Fatal编程技术网

Performance 如何在Unity3D中优化场景加载

Performance 如何在Unity3D中优化场景加载,performance,unity3d,loading,Performance,Unity3d,Loading,我想知道是否有任何方法可以加速unity3d中的水平加载。我目前在两个场景之间都有加载级别,但在ipad3上加载新级别大约需要5秒。太多了 我已经优化了所有的启动和唤醒功能,所以那里真的没有什么stuf。然而,我在每个场景中都有很多精灵,我认为它们占用了大部分加载时间 我是否可以确定哪些对象需要在开始时加载,哪些可以在级别的前10秒加载?我试着添加关卡加法,但这让我的游戏落后了一两秒 有什么聪明的加速方法吗?加载关卡所需的时间取决于场景中引用的内容。缩短装载时间的唯一方法是移除物品 您提到在关卡

我想知道是否有任何方法可以加速unity3d中的水平加载。我目前在两个场景之间都有加载级别,但在ipad3上加载新级别大约需要5秒。太多了

我已经优化了所有的启动和唤醒功能,所以那里真的没有什么stuf。然而,我在每个场景中都有很多精灵,我认为它们占用了大部分加载时间

我是否可以确定哪些对象需要在开始时加载,哪些可以在级别的前10秒加载?我试着添加关卡加法,但这让我的游戏落后了一两秒


有什么聪明的加速方法吗?

加载关卡所需的时间取决于场景中引用的内容。缩短装载时间的唯一方法是移除物品


您提到在关卡启动后加载一些东西是可以的。您可以使用。但是,只有在没有对正在加载的对象的引用时,这才对您有利。例如,如果场景中有100棵树,将其减少到10棵对您没有任何好处。该树仍被引用,必须在开始关卡之前加载。如果您消除了所有这些,那么您的关卡可以在不加载树的情况下开始。然后由您使用资源加载。加载并开始种植它们,可能在几帧的过程中,以防止打嗝。

答案是“是的!您可以以某种方式确定它。”但是,如果不知道您的游戏逻辑是什么,就不可能说您将如何确定它。您是否运行了探查器来检查花费了多少时间?这是解决任何性能问题的第一步。如何加载对象?我这样问是因为我也遇到了场景加载问题,我将与大家分享我是如何提高性能的。我试图装载大约30000个区块,这些区块分为32x32个批次。我在嵌套for循环中实例化这些块。for循环创建了很多延迟,因为它试图在加载前一个块之前实例化另一个块。这大约需要10秒来加载。我通过使用WaitForSeconds方法添加一个0.05秒的延迟来改进这一点。这让我的场景加载了一半的时间:)我没有在代码中实例化任何东西。我不知道如何运行探查器来查看加载所需的时间。一旦场景加载,它几乎立即运行。由于您提供的信息有限,很难帮助您。。。也许你应该从脚本开始实例化对象?这样你就可以控制它们何时加载…@gabrjan你使用的是Unity Pro还是free?这关系到我将要提出的建议。