javascript - p5.j​​s 旧帧不删除

标签 javascript animation p5.js

使用一个名为 p5 的 javascript 框架,我试图为一个在屏幕上移动的圆圈制作动画,但是旧帧不会删除,这会导致在 Canvas 上显示一条线。

var xPos = 0;

function setup() {
    createCanvas(400, 200)
    background(123);
}

function draw() {
    ellipse(xPos, height/2, 30, 30); //Draws the circle
    fill(255);
    xPos++; //Moves the circle a pixel over
    if(xPos > width){xPos = 0;} //resets the circle when it reaches the edge of the canvas
}
<script src="http://cdnjs.cloudflare.com/ajax/libs/p5.js/0.5.5/p5.js"></script>

最佳答案

那是因为您只调用了一次 background() 函数,就在程序的开头。

然后每次调用 draw() 函数时,您都会绘制另一个圆圈 - 不会清除任何旧帧。

如果您想清除每一帧的旧帧,请在 draw() 函数的开头调用 background() 函数。

关于javascript - p5.j​​s 旧帧不删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41337271/

相关文章:

javascript - 如何使用JSON.parse reviver参数解析日期字符串

jquery - 将动画添加到背景图像更改

javascript - 控制在何处创建 Canvas? P5.js

javascript - Onclick - 如何在它调用的不同页面上使用函数?

javascript - 使用 $(this) jquery 更改另一个元素

wpf - 如何在不知道进度动画的完成度的情况下显示进度动画?

javascript - Canvas 对象不改变 X 位置?

javascript - jQuery:如何克隆包含 p5 Canvas 的 div?

javascript - Rails 应用程序中 native HTML 需要图像路径

html - 如何在悬停时缩放多个图像而不改变其宽度和高度?