- Home /
Unity Profiler - Loading.UpdatePreloading - Huge Lag Spikes
Hi there,
We are busy having issues with building our game to iOS. We are getting huge lag spikes when the game goes from the first scene which is the scene we show logos etc to the main scene which is where the game play is.
We just cant figure out what is going on. The load time is in the 1800+ ms
Also here is the code for loading the next scene. Doubt it will be this but stranger things have happened.
using UnityEngine;
using System.Collections;
using DG.Tweening;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
public class AppatierIntro : MonoBehaviour
{
public CanvasGroup Logo;
public CanvasGroup LoadingBarCanvas;
public Image[] images;
public int levelToLoadOncomplete;
public Slider LoadingBar;
public float fakeLoadingValue;
public IEnumerator Start()
{
yield return 0;
foreach (var img in images)
{
img.DOFade(1, 1).OnComplete( ()=> {
img.DOFade(0, 1).SetDelay(1);
});
}
LoadingBarCanvas.DOFade(1, 1).SetDelay(3).OnComplete( () => {
Logo.DOFade(0,0);
StartCoroutine(LoadLevelWithProgress());
});
}
IEnumerator LoadLevelWithProgress()
{
yield return new WaitForSeconds(0.1f);
LoadingBar.DOValue(0.9f, 6).SetEase(Ease.InBounce).OnComplete( () => SceneManager.LoadScene(1, LoadSceneMode.Single));
AsyncOperation ao = SceneManager.LoadSceneAsync(1);
ao.allowSceneActivation = false;
while (ao.progress < 0.9f)
{
// Lerp this value over time
LoadingBar.DOValue(ao.progress / 2 + 0.1f, 1);
if (ao.progress >= 0.9f)
{
LoadingBar.DOValue(0.9f, 1);
}
yield return 0;
Debug.Log(ao.progress);
}
if (ao.progress >= 0.9f)
{
yield return new WaitForSeconds(2);
LoadingBar.DOValue(0.85f, 1);
yield return new WaitForSeconds(0.5f);
ao.allowSceneActivation = true;
}
}
}
screen-shot-2017-10-16-at-224242.png
(355.1 kB)
Comment