Unity加载设置:Application.backgroundLoadingPriority

最近有个朋友做加载优化,偶然听到他提起Application.backgroundLoadingPriority ,就顺便看了一下!

Application.backgroundLoadingPriority:

这是Application类的一个个静态属性,可以控制后台加载线程的优先级,从而控制异步加载资源所需的时间,以及后台加载时对游戏性能的影响。

适用API:

加载对象(Resources.LoadAsyncAssetBundle.LoadAssetAsync,AssetBundle.LoadAllAssetAsync),场景(Application.LoadLevelAsync,Application.LoadLevelAdditiveAsync)的异步加载函数在单独的后台加载线程上进行数据读取和反现实化,并在主线程上进行对象集成。

根据backgroundLoadingPriority 值限制了主线程上的集成时间:
- ThreadPriority.Low - 2ms;
- ThreadPriority.BelowNormal - 4ms;
- ThreadPriority.Normal - 10ms;
- ThreadPriority.High - 50ms.

这是异步操作可以在主线程的单帧花费最长时间。

单帧花费时间越多,可加载的数据越多,因此帧率将有所下降,较为影响游戏性能,但可减少加载资源的时间,能更快的进入游戏!

反之,单帧花费时间越少,可加载的数据越少,对游戏的游戏性能影响较小,可在游戏进行时有很好的后台加载。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    void Example() {
        Application.backgroundLoadingPriority = ThreadPriority.High;
    }
}

参考资料:Unity官方文档 Application.backgroundLoadingPriority 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值