[]关于cacheAsBitmap如果有动态内容,最好和静态内容分开,以便只缓存静态内容的理解

前提:
1、cacheAsBitmap指定显示对象是否缓存为静态图像;
2、对于容器内有大量静态内容或者不经常变化的内容(比如按钮),可以对整个容器设置cacheAs属性,能大量减少Sprite的数量,显著提高性能。如果有动态内容,最好和静态内容分开,以便只缓存静态内容。
问题:
第二点提到的(如果有动态内容,最好和静态内容分开,以便只缓存静态内容),这句话如何理解?如果在一个有显示内容动态改变的对象里面设置了cacheAsBitmap=true,第一点里面提到的缓存为静态图像,这里还会生效吗?如果生效了,是不是没动态改变一次内容都会再次生成一个静态的图像呢?
已邀请:

cuixueying

赞同来自: eden14

1、  设置cacheAs可将显示对象缓存为静态图像,当cacheAs时,子对象发生变化,会自动重新缓存,同时也可以手动调用reCache方法更新缓存。 建议把不经常变化的复杂内容,缓存为静态图像,能极大提高渲染性能
所以,是不是没动态改变一次内容都会再次生成一个静态的图像,答案是是的!
2、只要设置过cacheAs都会生效,但是我们设置cacheAs的目的是减少drawCall,提升性能,如果你只是针对了一张图片一个字体或者针对一个实时动态改变的对象进行cacheAs设置,是完全没有必要的,这样不仅不会提高性能,反而会损失性能,
 

eden14

赞同来自:

感谢你的回答。基于你的回复的第二点,我想再问多一个问题,你提到的基于一张(我理解为少数的显示元素)图片一个字体,能大概告知什么数量级的时候建议使用,有个区间吗?

要回复问题请先

商务合作
商务合作