[噼里啪啦]虚拟列表+渲染合批,通用不改引擎,支持2.4.x和3.8.x,开源且简单

期待支持mask版本的方案。store支持~~

再次确认了,只要看到第一行的内容就会闪,不管是改锚点位置还是scrollToTop的方法,第一次滚动一会都会闪。

只要看不到第一行,滚动就不会闪

嗯嗯,最近有点忙,我有空就解决它

嘶,现在渲染合批是不是不支持动态修改spriteFrame啊

支持的呀,是遇到什么问题了吗?

定位到问题了,如果使用了getChildByName, getChildByPath,渲染合批会不生效。
// this.level.string = this.data.config.level.toString();
this.node.getChildByPath(“lv_bg/text”).getComponent(Label).string = this.data.config.level.toString();
代理节点后,原本节点为null?

这个确实会存在这个问题,如果要修改渲染组件,尽量还是在脚本中绑定使用吧,这个问题后续纳入解决清单 :slightly_smiling_face:

大佬,工具要怎么用? 为什么2D版本拉下来我看dc也没优化啊

看看文本是不是没有选择可以合批的cacheMode :slightly_smiling_face:

全部改成Char可以了 , 难怪上面的朋友都说要出个教程 :slightly_smiling_face:

最近实在是忙的飞起,很多事情都做不了了 :face_with_thermometer:

老哥呀,原生上面合批不生效啊,我在3.6.3和3.8.6上都测试过(安卓原生), 预览和h5上都是管用的。

这个合批方式跟平台没有关系哦,你检查看看是不是某些设置没弄对,例如动态合图是否正确开启

老哥,跟设置应该无关,我的使用场景是有20个item,每个item下面有2张图,1个label,2张图分别加载的是2个图集中的图片,label做了char缓存,理论上只会产生3个dc,但现在产生了60个dc,证明合批还是被打断了。
我在真机上打印过,所有的图片和文本也都置于了renderLayer之下了,原始item下的UIRenderer组件也都被移除了,理论上合批应该会生效才对,现在不知道问题出在了哪里。
另外我也使用你gitee上的项目测试,也尝试开启了动态合图设置,dc数量也都为未合批的数量

我有空看看

大佬太牛逼了