unity3d では、assetbundle をロードしますが、Instantiate(bundle.mainAsset) - unity3d に遅延が発生すると、多少の遅延が発生します。これは私のコードで、assetBundle をロードします (クラス DataAssetLoad - クラス、url、nameBunle などを含む)。
private IEnumerator LoadCoroutine(DataAssetLoad dataAsset)
{
while (!Caching.ready)
yield return new WaitForEndOfFrame();
WWW www = WWW.LoadFromCacheOrDownload(dataAsset.url, 0);
yield return www;
AssetBundle bundle = www.assetBundle;
yield return new WaitForEndOfFrame();
AssetBundleRequest request = bundle.LoadAssetAsync (dataAsset.bundleName, typeof(GameObject));
yield return request;
GameObject obj = request.asset as GameObject;
GameObject newObject = Instantiate(bundle.mainAsset) as GameObject;
newObject.transform.parent = this.transform;
bundle.Unload(false);
www.Dispose();
}