在主动画循环中执行另一个绘制循环,持续5秒
Execute another draw loop for 5 seconds within the main animation loop?
我有一个带有animate()循环的"简单"游戏,它使用requestAnimationFrame():
function animate(currentTime) {
if(playGame) {
requestAnimationFrame( animate );
}
if(isCollide) {
endTime = currentTime + 5000;
drawCollision(currentTime);
}
}
我想运行drawCollision()代码5秒,所以我做了这样的事情:
function drawCollision(currentTime) {
if(playCollide) {
requestAnimationFrame( drawCollision );
}
if(currentTime < endTime) {
drawImage(image, x, y, height, width, rotation);
} else {
playCollide = false;
}
}
然而,这两个rAF调用似乎同时运行?或者至少在drawCollision运行时执行调用drawCollision()后的代码
OK,似乎已经得到了它的工作,不得不调用cancelAnimationFrame(animate)
之前调用我的drawCollision()
代码-也移动了我的'游戏结束'代码内的else for if循环drawCollision
cancelAnimationFrame
polyFill包含在以下位置的rAF中:http://www.paulirish.com/2011/requestanimationframe-for-smart-animating/
相关文章:
- Javascript:延迟在html5画布上循环绘制
- 使用javascript中的for循环在画布上绘制路径
- 从带有循环的数组中一个接一个地在画布上绘制形状
- 使用 for 循环在画布中绘制 img
- 使用香草 JS 和循环绘制表格
- 使用 for 循环绘制 HTML5 画布圆圈
- Javascript,如何加载,绘制和循环120帧
- 如何使用 svg 循环绘制贝塞尔曲线
- 使用 for 循环动态创建在画布内绘制的图像
- 在绘制图表之前在每个循环中编排嵌套的 AJAX 调用 (JQuery)
- 如何使用延迟的 for 循环绘制画布
- 画布用循环绘制线条
- HTML 5 画布:在游戏中使用绘制图像会使循环非常慢
- 使用for循环在谷歌地图上绘制饼图效果不佳
- 如何在JavaScript/JQuery中绘制循环图
- 使用js-op和svg绘制循环
- MySql和PHP循环使用x,y坐标绘制正方形
- 使用视频循环绘制画布
- 在用html画布和javascript绘制塞舌尔国旗后,我试图使用数组或循环来简化我的代码
- 如何在D3中使用循环绘制许多函数