你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
layabox
赞同来自:
(this.CityBox2.getChildAt(0).getChildByName("Text2") as Laya.Text).cacheAs = "bitmap"; Laya.Tween.from(this.CityBox2, { scaleX: 0, scaleY: 0 }, 300, null, Laya.Handler.create(this, () => { (this.CityBox2.getChildAt(0).getChildByName("Text2") as Laya.Text).cacheAs = 'none'; }));
小高
该问题目前已经被锁定, 无法添加新回复
2 个回复
layabox
赞同来自:
这是因为在动画过程中,对象的缩放值在不断变化,要知道,文本的每一次变化就要涉及到文本重绘,所以,要保障每次的文本高清绘制,底层要生成大量的与缩放值对应的文字图片放入大图集。这样会导致大量的显存占用,对性能的也是损耗是非常大的。
要解决这个问题,我们建议的方式是,开发者在动画开始前将文字的cacheAs属性设置为'bitmap'。这个'bitmap'的属性可以将文字的bitmap缓存下来,避免在动画播放过程中反复重新生成文字图像,减少显存的消耗,提高性能。然后在动画播放完成后,再将其设置回"none",
代码如下:
小高
赞同来自: