コード例 #1
0
ファイル: AssetsTest.cs プロジェクト: zijuan0810/xasset
    IEnumerator Load()
    {
        var asset = Assets.LoadAsync <GameObject>(assetPath);

        if (asset != null)
        {
            yield return(asset);

            var prefab = asset.asset;
            if (prefab != null)
            {
                var go = Instantiate(prefab) as GameObject;
                ReleaseAssetOnDestroy.Register(go, asset);
                GameObject.Destroy(go, 10);
            }
        }

        yield return(new WaitForSeconds(11));

        asset = Assets.Load <GameObject>(assetPath);
        if (asset != null)
        {
            var prefab = asset.asset;
            if (prefab != null)
            {
                var go = Instantiate(prefab) as GameObject;
                ReleaseAssetOnDestroy.Register(go, asset);
                GameObject.Destroy(go, 3);
            }
        }
    }
コード例 #2
0
        void LoadSyncCallback(MyAsset asset)
        {
            if (asset != null)
            {
                var prefab = asset.asset;
                if (prefab != null)
                {
                    var go = GameObject.Instantiate(prefab) as GameObject;
                    go.AddComponent <DownPanel>();
                    ReleaseAssetOnDestroy.Register(go, asset);
                    var parent = GameObject.Find("SceneUI/layer1").gameObject;
                    go.transform.parent        = parent.transform;
                    go.transform.localPosition = Vector3.zero;
                    go.transform.localRotation = Quaternion.Euler(0f, 0f, 0f);
                    go.transform.localScale    = Vector3.one;
                    GameObject.Destroy(go, 10);
                }
            }

            Owner.LuaMgr.InitStart();
            Owner.LuaMgr.DoFile("Main.lua"); //加载文件,编译文件,并且返回一个函数,不运行。

            Util.CallMethod("Main", "start");
            Util.CallMethod("Main", "SetValue");
        }
コード例 #3
0
ファイル: AssetsTest.cs プロジェクト: NameSteven/TJGameFrame
    void LoadSyphere()
    {
        var asset = Assets.Load <GameObject>(sypherePath);

        if (asset != null)
        {
            var prefab = asset.asset;
            if (prefab != null)
            {
                syphereobj = Instantiate(prefab) as GameObject;
                ReleaseAssetOnDestroy.Register(syphereobj, asset);
                // GameObject.Destroy(go, 10);
            }
        }
    }
コード例 #4
0
ファイル: AssetsTest.cs プロジェクト: NameSteven/TJGameFrame
    void LoadPrefab()
    {
        var asset = Assets.Load <GameObject>(assetPath);

        if (asset != null)
        {
            var prefab = asset.asset;
            if (prefab != null)
            {
                testpanel = Instantiate(prefab, GameObject.Find("Canvas").transform) as GameObject;
                //  testpanel.transform.SetParent(GameObject.Find("Canvas").transform);
                ReleaseAssetOnDestroy.Register(testpanel, asset);
                // GameObject.Destroy(go, 10);
            }
        }
    }
コード例 #5
0
ファイル: AssetsTest.cs プロジェクト: zjuflyer/xasset
    IEnumerator Load()
    {
        string assetPath = "Assets/SampleAssets/Logo.prefab";

        Debug.Log("------------------ Assets.Load ------------------");
        for (int i = 0; i < 2; i++)
        {
            yield return(new WaitForEndOfFrame());

            var asset = Assets.Load <GameObject>(assetPath);
            if (asset.asset != null)
            {
                var go = Instantiate(asset.asset) as GameObject;
                ReleaseAssetOnDestroy.Register(go, asset);
                DestroyImmediate(go);
            }
        }
        yield return(new WaitForEndOfFrame());

        Debug.Log("------------------ Assets.LoadAsync ------------------");
        for (int i = 0; i < 2; i++)
        {
            yield return(new WaitForEndOfFrame());

            var asset = Assets.LoadAsync <GameObject>(assetPath);
            if (asset != null)
            {
                yield return(asset);

                var prefab = asset.asset;
                if (prefab != null)
                {
                    var go = Instantiate(prefab) as GameObject;
                    ReleaseAssetOnDestroy.Register(go, asset);
                    DestroyImmediate(go);
                    go = null;
                }
                yield return(new WaitForEndOfFrame());
            }
        }
    }
コード例 #6
0
    public static Unit CreateUnit(string unitName, string path = null)
    {
        Asset asset = Assets.Load <GameObject>(path != null ? path : UnitPrefabPath + unitName + ".prefab");

        if (asset != null)
        {
            var prefab = asset.asset;
            if (prefab != null)
            {
                var go = GameObject.Instantiate(prefab) as GameObject;
                ReleaseAssetOnDestroy.Register(go, asset);
                return(go.GetComponent <Unit>());
            }
            else
            {
                throw new System.Exception("创建Unit失败:" + unitName);
            }
        }
        else
        {
            throw new System.Exception("创建Unit失败:" + unitName);
        }
    }
コード例 #7
0
    public static PlayableDirector LoadTimeline(string name)
    {
        Asset asset = Assets.Load <GameObject>(TimelinePrefabPath + name + ".prefab");

        if (asset != null)
        {
            var prefab = asset.asset;
            if (prefab != null)
            {
                var go = GameObject.Instantiate(prefab) as GameObject;
                ReleaseAssetOnDestroy.Register(go, asset);
                return(go.GetComponent <PlayableDirector>());
            }
            else
            {
                throw new System.Exception("创建Unit失败:" + name);
            }
        }
        else
        {
            throw new System.Exception("创建Unit失败:" + name);
        }
    }
コード例 #8
0
    public static GameObject Instantiate(string Path)
    {
        Asset asset = Assets.Load <GameObject>(Path + ".prefab");

        if (asset != null)
        {
            var prefab = asset.asset;
            if (prefab != null)
            {
                var go = GameObject.Instantiate(prefab) as GameObject;
                ReleaseAssetOnDestroy.Register(go, asset);
                return(go);
            }
            else
            {
                throw new System.Exception("创建GO失败:" + Path);
            }
        }
        else
        {
            throw new System.Exception("创建GO失败:" + Path);
        }
    }