希望小程序能开放requestAnimationFrame,或者提高draw的效率。手机客户端(例如小米MIX 6+256)在遇到画布的action有四百个以上的时候绘制就很慢,接近500ms才能绘制完成。以下视频是我删减移植了部分three.js的代码做的全景展示,在分割面数为5的情况下绘制仅能勉强跟上手指一动。
https://github.com/leo9960/xcx_threejs/blob/master/1551712406062.mp4
框架类型 | 问题类型 | API/组件名称 | 终端类型 | 微信版本 | 基础库版本 |
---|---|---|---|---|---|
小程序 | 需求 | canvas | 客户端 | 7.0.0 | 2.6.1 |
4 个回答
有没有profile过具体慢在哪里呢
我想了解一下这个(program)是什么意思,每次间隔150-170ms
最好真机profile,开发者工具上profile可能不准,实现可能不一样
这就是真机上的结果,开发工具上问题不大,算是比较流畅。
刚刚问了下,这里现在外网的实现确实是效率比较低的,canvas正在重构,预计下个月会发布到外网
好的谢谢
requestAnimationFrame 在canvas里面。我昨天试了接入threejs,锯齿很严重怎么搞?
用Canvas做了个电影院选座,可以移动、缩放,100个座位在iPhone7P上只有12的fps。。。。。
我也是这个问题,写了一个围棋的小程序,逻辑都写完了,试用的时候,发现棋子一多, draw 一次要 500 - 2000ms,这样的话,这个程序可能就要废了。 在想办法寻求其它优化方案。
也不知道这到底是个什么样的bug影响的hhh