UIGUI 打開關閉界面性能消耗筆記

以下全是隱藏開啓界面 ,不包括實例化界面操作

先說關閉界面

採用GameObject.SetActive 方法 ,消耗的時間 6.70, 產生 gc 384B

解決思路,1、移除視野?  不行,drawCall 沒有任何變化

                   2、縮放大小 0 0 ? 可以,萬一裏面有不可縮放的粒子特效怎麼辦?有待商榷

                   3、給當前組件加canvas,設置canvas的組件可用性,試試 --- >  

                   4、百度搜的 Canvas Group 也試試 ,對比一下

時間 2.00   gc : 6.8KB    時間減少了4.7 ms ,gc增加了 6416B , 乾的漂亮 ,有讀者要問了,博主你在玩蛇皮?

開界面 對比   GameObject.SetActive()   和 Canvas.Enable    ---  >

GameObject.SetActive  時間 28.02 ms  , GC : 50.6KB  ,  Canavas enable  時間  8.13   GC :30.4KB  

Canvas.enable  完勝  ,鼓掌 !!! 

但是  GC 時間都那麼高啊 啊啊啊 ,怎麼幹掉 ? 

百度是我們的好朋友 ,繼續搜索  Canvas Group   - --> 試 !

相比月 canvas enable -- >  開界面 5.5ms  GC :44.7 又上去了,  關界面 快了0.87ms , 但是多了6.8kB .

說好的 比 enable 好呢,  只是時間調用上快了,GC反而多了

 

決定暫時先用 Canvas.enable 了 , 有空了再研究有沒有好的方案 , 希望有好方案的大佬 不吝賜教 ,謝謝 !

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章