性能优化
Q1:请问怎么优化下图这两者的GC Alloc?每次AddComponent 都会有这么多的开销。
图中的两项GC Alloc是在进行AddComponent时不可避免的,因此只能通过尽量减少AddComponent的调用次数来进行优化。
性能优化
Q2:请问,反复对一个GameObject调用SetActive(true),是否会很耗性能?
频繁SetActive(true/false)会有一定的CPU开销占用。其少量次数并不会带来很高的CPU占用,但是在我们检测过的很多项目中,其每帧都可能存在大量的SetActive调用。究其原因,是因为挂载在GameObject的脚本上,其Update或LateUpdate等函数中每帧都会调用SetActive操作,从而造成了其每帧几十甚至上百次的调用操作。
正因如此,我们在报告中将SetActive的具体GameObject信息、频率和耗时都详细展示出来,以方便大家在几分钟之内,就可以将SetActive调用过量的问题进行修复。