Sorry that was one other thing I forgot about, I have created a separate project and could reproduce it within it, however I needed to delay the initial scene load.
So I created the below script SplashTest.cs
using UnityEngine;
public class SplashTest : MonoBehaviour
{
public GameObject LoadDelayPrefab;
public int Count = 100000;
private void Awake()
{
for (int i = 0; i < Count; ++i)
{
Instantiate(LoadDelayPrefab);
}
}
}
If you add this script to an object in your initial scene and set the prefab property to a prefab made from something like a cube or model so it has something that will take time to instantiate x 100k.
If you cannot reproduce it with this change, I can zip up an example project with the issue.