概要
Application.backgroundLoadingPriority を使用することで
- Resources.LoadAsync
- AssetBundle.LoadAssetAsync
- AssetBundle.LoadAllAssetAsync
- SceneManager.LoadSceneAsync
これらの関数を用いてデータをバックグラウンドで読み込む時に
1 フレーム内で使える最大時間を変更できます
列挙型 | 最大時間 |
---|---|
ThreadPriority.Low | 2 ms |
ThreadPriority.BelowNormal(デフォルト) | 4 ms |
ThreadPriority.Normal | 10 ms |
ThreadPriority.High | 50 ms |
使用例
using UnityEngine; public class Example : MonoBehaviour { private void Awake() { // 可能な限り多くのデータを読み込みます // その結果、フレームレートが低下する可能性があります // プログレスバーを表示して読み込みを行う場面に適しています Application.backgroundLoadingPriority = ThreadPriority.High; // データをゆっくり読み込み、 // ゲームのパフォーマンスに影響を与えないようにします // ゲームプレイ中にバックグラウンドで読み込みを行う場面に適しています Application.backgroundLoadingPriority = ThreadPriority.Low; } }