Exemplo n.º 1
0
    // AssetBundleパスからAssetのロード
    public static AssetBundleLoadBase LoadAssetAsync(string assetBundlePath, string assetName, System.Type type)
    {
        AssetBundleLoadBase loadRequest = null;

        // ダウンロード開始予定リストに追加
        DownloadAssetBundle(assetBundlePath);
        // リクエスト取得
        loadRequest = new AssetBundleLoadAsset(assetBundlePath, assetName, type);
        // ロード経過チェック用リストにリクエスト追加
        _inProgressList.Add(loadRequest);

        // リクエスト処理を返す
        return(loadRequest);
    }
Exemplo n.º 2
0
    // AssetBundleのロード
    protected override IEnumerator Load(string assetBundleName, string assetName)
    {
        Debug.Log("load開始" + assetName + " 経過frame " + Time.frameCount);

        // AssetBundleからAssetをロード
        AssetBundleLoadBase request = AssetBundleManager.LoadAssetAsync(assetBundleName, assetName, typeof(GameObject));

        // ロードできなかった場合
        if (request == null)
        {
            yield break;
        }

        // リクエスト処理を制限時間ありでイテレーション
        yield return(StartCoroutine(this.CoroutineTimeOutCheck(request, 5f)));

        // GameObject指定
        GameObject prefab = request.GetAsset <GameObject>();

        if (prefab != null)
        {
            _loadedObjectList.Add(prefab);
        }
    }