这周有网友提到用NGUI做战斗冒血,冒伤害等文字性能太差。确实如此,我之前(NGUI 3.8.2,1000块的Android机器上)在Profile中也发现UIPanel占用CPU奇高。
因此最终自己在战斗飘文字这一块没有使用NGUI,而是自己创建Mesh来处理。优化前后在手机上每秒大概增加了10帧。
可以看到DrawCall和NGUI一样都为1,这个 MeshText 就是我自己写的HUD文本组件了。
虽然里面用到了NGUI的图集,但渲染和更新已经完全和NGUI无关了。如果想改成不用NGUI的图集也可以。不过那时候比较懒,已经有图集了,就直接拿过来用咯。不想用NGUI图集的可以自行修改掉。这样可以脱离NGUI运行。