Ejemplo n.º 1
0
Archivo: CObject.cs Proyecto: scris/_GS
    public static void StartWatch(object obj)
    {
#if COBJECT_DEBUGGER
        if (!CDebug.IsEditor || !Application.isPlaying || IsApplicationQuited)
        {
            return;
        }

        CAsync.AddMainThreadCall(() =>
        {
            try
            {
                var newDebugger         = new GameObject(string.Format("{0}-{1}", obj.ToString(), obj.GetType())).AddComponent <CObjectDebugger>();
                newDebugger.WatchObject = obj;

                CDebuggerObjectTool.SetParent(ContainerName, obj.GetType().Name, newDebugger.gameObject);

                Cache[obj] = newDebugger;
            }
            catch (Exception e)
            {
                CDebug.LogError(e.Message);
            }
        });
#endif
    }
Ejemplo n.º 2
0
    public float FinishUsedTime; // 参考,完成所需时间

    public static CResourceLoaderDebugger Create(string type, string url, CBaseResourceLoader loader)
    {
        const string bigType = "ResourceLoaders";

        Func <string> getName = () => string.Format("{0}-{1}-{2}", type, loader.Desc, url);

        var newHelpGameObject = new GameObject(getName());

        CDebuggerObjectTool.SetParent(bigType, type, newHelpGameObject);
        var newHelp = newHelpGameObject.AddComponent <CResourceLoaderDebugger>();

        newHelp.TheLoader = loader;

        loader.SetDescEvent += (newDesc) =>
        {
            if (loader.RefCount > 0)
            {
                newHelpGameObject.name = getName();
            }
        };

        loader.DisposeEvent += () =>
        {
            CDebuggerObjectTool.RemoveFromParent(bigType, type, newHelpGameObject);
        };


        return(newHelp);
    }
Ejemplo n.º 3
0
 // 可供调试删资源
 void OnDestroy()
 {
     if (!IsRemoveFromParent)
     {
         CDebuggerObjectTool.RemoveFromParent(bigType, Type, gameObject);
         IsRemoveFromParent = true;
     }
 }
Ejemplo n.º 4
0
 void Update()
 {
     if (TheObject == null && !IsRemoveFromParent)
     {
         CDebuggerObjectTool.RemoveFromParent(bigType, Type, gameObject);
         IsRemoveFromParent = true;
     }
 }
Ejemplo n.º 5
0
    public static CResourceLoadObjectDebugger Create(string type, string url, UnityEngine.Object theObject)
    {
        var newHelpGameObject = new GameObject(string.Format("LoadedObject-{0}-{1}", type, url));

        CDebuggerObjectTool.SetParent(bigType, type, newHelpGameObject);

        var newHelp = newHelpGameObject.AddComponent <CResourceLoadObjectDebugger>();

        newHelp.Type      = type;
        newHelp.TheObject = theObject;
        return(newHelp);
    }