求助,PageView在native与webGL性能差距较大

求助大神,项目使用PageView做关卡界面,50个page左右,在webGL下很流畅,native与模拟器下卡爆了。不知有没有大神知道原因以及怎么解决。
webGL:

native与模拟器:
GL verts:18064
GL calls:2170
fps:33.6

大哥,你装真机玩就不卡了,当然要排除掉那些几百年前的小霸王,老机子无解

大哥,native 就是真机,iphone7与华为荣耀7,这机子也老?
真机与模拟器page越多越卡
电脑浏览器webGL就不会,手机扫码用手机浏览器也不会

我Android4.4系统,价格几百块的平板,58page,不怎么卡啊

你看你能不能弄一个 demo 上来,可能你的某些用法导致了卡。

我反而是在webgl和canvas以及模拟器上都卡

抽了个demo,麻烦子龙大神看一下,用的creator1.4.2
PageViewTest.zip (492.9 KB)

另外请教一下,onload这个关卡页面,动态创建Page要很久,有没有好的策略,谢谢

子龙大神,麻烦有时间看一下

你的这个 demo 在 native 上面有 4000 多个 draw call,不卡才怪,我的 pc 浏览器都卡。

你要把碎图合并,然后文字和图片不要放到同一层,或者使用 bmfont,把图片和文字都合图,这样可以利用 batch。

注意:如果使用自动合图配置,模拟器是看不到合图效果的,需要构建之后,在真机运行看效果。

大神,按照你说的,page prefab图片与文字(策划配的,bmfont暂不考虑)分层,native draw call有所下降,但不明显。

性能确定是Label组件原因,但是100个页面的 draw call,pc浏览器只有40左右呀,在native是4000左右,不是一个数量级,这个不正常吧。感觉native不可见的区域也会draw call?

label 只是会打断 draw call 批处理,但是问题没有你想的这么严重。native 的 sprite 在不可见区域也会渲染,这是一个 bug,1.5 版本会修正之。

用手机微信扫码,没找到设置 看draw和fps,但感官体验上手机浏览器和微信浏览器,比native要好很多

你的 draw call 4000 多,当然会卡。。。

嗯,大神,draw call 多,会卡这个我已经了解了,但是native为什么会有这么多draw call,是sprite bug的原因么?

sprite 没有实现 culling 导致的。

谢谢大神,1.5的测试版已经修复了么?我下下来测试一下

1.5 测试版本还没修复,再等等吧。

谢谢大神的耐心解释,希望1.5正式版尽快出来。
加油cocos creator!

子龙大神,第一时间用1.5测试了一下,sprite 在不可见区域也会渲染,这个问题是不是没有解决,而且在webGL和手机浏览器,性能好像反而变差了,见下图

对,不可见区域渲染的问题并没有解决,会在 1.5.x 后续版本解决。