问个问题:对超多char缓存Label赋值 为啥DC会增长

1000个使用char缓存的Label随机赋值DrawCall会增长
for (let i = 0; i < this.length; i++) {
let label = this.layout.children[i];
let num= Math.floor(Math.random() * 1000)
label.getComponent(Label).string = num+ “:”;
}
版本3.8.1

内存不在同一页

char不是以字为单位的吗 最多10个单位

附张测试图

同一张图片,你渲染1000个sprite,drawcall也会增加



大概就是这三个图

这个没有吧 1000个连续的?

多谢回复,我去看看

你可以遍历把你创建的渲染节点的bid打印出来看一看

sprite没测出来,文本的bid确实有穿插,为什么会有这种情况,除了内容,字体大小颜色没区别

每一个渲染都需要内存存储数据,内存不在同一块,就打断合批了

sprite没测试来代表数量级还没上去,再多一点就会出现了

确实量级上去也会有,和文本相比好太多了

sprite会更好代表相对label的char模式使用的内存更少(猜测)