Repository navigation
v6.8.13
6.8.12 的漂浮按卡片未倾斜的高度判断新卡是否藏在视口外,较大档位下倾斜后的边角常先露进屏幕边缘;比 2:1 更长的图放不进入场缓冲带,在边缘淡入。展映三种模式又都在取纹理时才下载图片,手动滚动、拖动或切换星团稍快时,进入画面的卡片常要等网络。
feat:
- 漂浮比 2:1 更长的图也在视口外入场:放不下缓冲带的卡近端贴着入场线、远端伸出带外;缓冲带统一为半屏,各档疏密不变,带内卡片与纹理占用与 6.8.12 相当,桌面较大档位带内卡片少约两到三成。
fix:
- 较大档位下漂浮新卡倾斜后的边角不再先露进屏幕:入场位置按倾斜与摆动后的竖向跨度计算,并离视口边缘至少 16px。
perf:
- 展映三种模式在屏外先下载即将出现的图片:纹理缓存用纹理加载没有占用的下载名额先取压缩字节、不解码,建卡时只需解码;最紧迫的预取字节在原有字节预算的一半内受保护,填满即停、不为下载新的而丢弃旧的,不增加纹理与 GPU 占用。提前量按预取的图后来上屏的把握各自确定:漂浮与瀑布按顺序取候选,在已取纹理之外分别多备两屏、三屏;星群先备当前星团接下来轮换的 4 张与它和环上邻居还没持有贴图的位置,再备其余星团各 1 张轮换图,字节预算放得下时(宽屏)另备其余星团的总览位置。离线测量(300ms 下载延迟、默认密度)中,漂浮快速甩动与漂浮、瀑布常速滚动进入画面时全部就绪(原先漂浮甩动九成以上、瀑布常速桌面约一成半、手机约九成要等网络),1000ms 慢网下桌面常速滚动也基本就绪;星群总览、切换星团、回到总览要等网络的,桌面由约七成至九成以上降到约三分之一及以下,手机切换由约四成降到不到一成;密集档受下载吞吐所限,改善有限。代价是多下载最终未上屏的图片:漂浮与瀑布 5–17%(会话结束时剩下的几屏),星群宽屏约六成、手机约七成(应用自带存储提供的图片,重复请求多由浏览器缓存返回)。
test:
- 展映用例的纹理缓存桩补上字节预取接口;字节缓存与失败恢复用例补预取只下载不解码、建卡复用预取字节、卸载后不再写入及预取失败共用失败记录的断言;漂浮双向补图用例的带内卡片数容差按随机落位的波动放宽,消除约一成概率的误报。
chore:
- Web 参考同步漂浮缓冲带、入场余量、扫描计数与字节预取的约束。