前提・実現したいこと
Unity初学者です。本当に始めたばかりでよくわからないまま、調べつつコードを書いています。
LoadSceneではシーンの遷移がとても遅いので、LoadSceneAsyncを用いて事前にシーンをロードしておき、任意のタイミングでシーン遷移をしたいです。
しかし、falseを指定しているのに、ロードが完了するとすぐに次のシーンに遷移してしまい、待ってくれません。具体的にどこをどう直せば理想とする動きになるのか、どなたかご教授ください。
よろしくお願いいたします。
該当のソースコード
c#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using UnityEngine.SceneManagement; 5 6 7public class wsSceneDirector : MonoBehaviour { 8 9 private float step_time; // 経過時間カウント用 10 private AsyncOperation asyncLoad; 11 12 void Start() 13 { 14 asyncLoad = SceneManager.LoadSceneAsync("SpringScene", LoadSceneMode.Additive); 15 16 asyncLoad.allowSceneActivation = false; 17 } 18 19 void Update() 20 { 21 step_time += Time.deltaTime; 22 23 if (step_time >= 20.0f) 24 { 25 asyncLoad.allowSceneActivation = true; 26 } 27 }
試したこと
調べるとisDoneはallowSceneActivationがtrueになっていないとtrueにならないようだったので、使用せずに書きました。
補足情報(FW/ツールのバージョンなど)
あなたの回答
tips
プレビュー