嗚嗚喔學習筆記: Unity AddCompoent vs Object.Instantiate 誰效能更好?

搜尋此網誌

2019年11月24日 星期日

Unity AddCompoent vs Object.Instantiate 誰效能更好?

一樣的物件先加好Compoent在使用 Object.Instantiate 複製
還是先複製 在 AddCompoent 誰更快?




   

        Text pureText = new GameObject().AddComponent();
        Text ihaveoutline = new GameObject().AddComponent();
        ihaveoutline.gameObject.AddComponent();
        ihaveoutline.gameObject.AddComponent();

        Profiler.BeginSample("WTF_ADD_COMP");

        for (int i = 0; i < 10; ++i)
        {
            GameObject newG = UnityEngine.Object.Instantiate(pureText.gameObject);
            newG.AddComponent();
            newG.AddComponent();
            newG.AddComponent();
            newG.AddComponent();
        }

        Profiler.EndSample();
        Profiler.BeginSample("WTF");

        for (int i = 0; i < 10; ++i)
        {
            UnityEngine.Object.Instantiate(ihaveoutline.gameObject);
        }

        Profiler.EndSample();
        Profiler.BeginSample("WTF_LOG");

        for (int i = 0; i < 10; ++i)
        {
            Debug.LogFormat("WTF!!!!!!!!!!!!!!!!!!!!!!");
        }

先加好Compoent更快!  AddCompoent  有多餘的消耗:

沒有留言:

張貼留言