概要
using UnityEngine; public class Example : MonoBehaviour { private void Awake() { Application.backgroundLoadingPriority = ThreadPriority.High; } [RuntimeInitializeOnLoadMethod( RuntimeInitializeLoadType.BeforeSceneLoad )] private static void RuntimeInitializeOnLoadMethodBeforeSceneLoad() { Application.backgroundLoadingPriority = ThreadPriority.High; } [RuntimeInitializeOnLoadMethod( RuntimeInitializeLoadType.AfterSceneLoad )] private static void RuntimeInitializeOnLoadMethodAfterSceneLoad() { Application.backgroundLoadingPriority = ThreadPriority.High; } private void Update() { Debug.Log( Application.backgroundLoadingPriority ); // BelowNormal } }
Awake や RuntimeInitializeOnLoadMethod のタイミングだと反映されず
BelowNormal に戻ってしまう
using UnityEngine; public class Example : MonoBehaviour { private void Start() { Application.backgroundLoadingPriority = ThreadPriority.High; } private void Update() { Debug.Log( Application.backgroundLoadingPriority ); // High } }
Start だと正しく反映される