将画布导出为p5js中的GIF/PNG格式
我使用原子编辑器。我想用我的画布制作20秒GIF。
saveFrames()
有限制(我猜)。它允许将.png文件保存为较短的gif(3-5秒),即使我键入saveFrames("aa","png",15,22);
我发现了CCapture.js,但找不到任何用于导出画布的代码示例。
它不必导出为GIF;但我至少希望保存.png快照 我的动画在画布上无限。我该怎么做?我的p5.js动画代码:
数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">var x = 0;
var speed = 10;
var d1 = 100;
var d2 = 100;
function setup() {
createCanvas(600, 400);
background(0);
//saveFrames("aa","png",15,22);
}
function draw() {
stroke(random(100, 255), 0, random(100, 190));
strokeWeight(1.5);
ellipse(x, 100, d1, d1);
x = x + speed;
d1 = d1 - 0.6;
if (x > width || x < 0) {
speed = speed * -1;
fill(speed * 51);
}
ellipse(x, 300, d1, d1);
ellipse(x, 200, 50, 50);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.1/p5.min.js"></script>
GIF
我一直在开发一个支持推荐答案导出的新库p5.createLoop。
这将运行草图,然后以相同的帧速率呈现GIF。
function setup() {
createCanvas(600, 400);
background(0);
frameRate(22)
createLoop({duration:15,gif:true})
}
这里是一个codePen,其中包含完整的示例。大约需要两分钟,超过50MB,完全值得
相关文章