如题用createCanvas建立的离屏的canvas,本来是想用来做ui的缓存的,结果发现动态更新ui的时候fps降低得非常厉害,还不如我直接在主canvas里绘制,这效率,恐怕直接用dom更新都比他快
小游戏性能是有点差,特别ios端,同样的场景,居然帧数比安卓的还低,比原生的差很多
其他机型有出现类似问题吗?
我没有测试过,我只有自己的手机而已,现在小游戏也只能自己预览
在主循环里
if(需要更新ui){
uicanvas.clearrect
uicanvas.draw
需要更新ui=false
}
maincanvas.drawImage(uicanvas)
和你们自带的游戏不同的是,我给所有canvas的width和height都是乘以pixelRatio的,但用style约束到屏幕长宽,我不知道这是否会影响,但按照道理是不应该有影响的。
以上代码如果我把需要更新ui去除,每帧都绘制在第二canvas上,FPS也是一样显著下降
可以提供一下代码说明你的具体做法吗?
@LastLeaf 你的意思是canvas 2d也是使用 gl 硬件加速的?
对于小游戏,是的。
你好,请提供一下出现问题的机型和微信版本。
收到。事实上小游戏框架是基于GL实现的,你可以直接在主canvas绘制的。
魅族note5,微信6.6.1