【问题标题】:uneven scene change delay in unity不均匀的场景变化延迟统一
【发布时间】:2017-05-27 03:09:24
【问题描述】:

我在 unity 5 中制作了 android 2d 游戏,大约有 15 个场景,并将场景更改脚本应用于按钮,我观察到通过 onclick 按钮更改场景的延迟不均匀,一些场景快速加载,而其他场景在大约 1 的短暂延迟后加载2 秒,有时 2~3 秒,建议可以做什么。

【问题讨论】:

  • 你到底想要什么??要消除延迟吗??
  • 是的,我希望所有场景同时加载
  • 个人版是不可能的?
  • 是的,但是您可以添加一个加载屏幕来显示用户。
  • 加载时间取决于这些场景包含的内容以及加载它们时运行的脚本。加载屏幕是最安全的选择。或者,如果用户打算在加载场景后看到相同的 UI,则只需禁用所有按钮并显示加载消息。

标签: unity3d unity5 unityscript unity3d-2dtools


【解决方案1】:

准确但可能不受欢迎的答案:

您对此无能为力

Unity 场景,当您加载新场景时,必须从磁盘反序列化(它们保存在内存中!)。场景越大(游戏对象、单一行为等越多),此过程所需的时间就越长。此外,每个 MonoBehaviour 脚本需要发送一个Awake()Start() 调用,其中has some significant overhead

您可以通过使用更少的带有 Awake 和 Start 方法的脚本(从单个 Main 脚本在不同的方法签名下调用相同的逻辑)以及更少的脚本(进一步集中您的程序)以及在Fast But No Exceptions.NET Subset 下编译游戏(但它们都不能用于编辑器运行),两者都在之前的链接文章中提到。

Unity 也有可能以资源格式(即clunky and slow)编译场景,而您可能会受益于使用Asset Bundles

但是,无论您的优化工作如何(存在的选项很少),您仍然会受到各种场景之间的加载时间的限制。一个复杂的场景总是比一个较小的场景需要更长的时间来过渡,没有办法那个

【讨论】:

    猜你喜欢
    • 2022-12-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多