首页 > 解决方案 > p5.j​​s 控制我播放的帧数

问题描述

我想控制draw()被调用的次数,基本上让我们想象一下我有那个基本代码:

var e = 1;

function setup() {
    window.canvas = createCanvas(200, 200);
}

function draw() {
    fill(255, 255, 0);
    ellipse(50 + e, 50, 30);
    e++;
}

我想创建一个moveOneStep()激活draw()一次的函数,所以假设我正在执行 5 次 for 循环,然后 draw 将被调用 5 次,圆圈将向右移动 5 步(像素),

怎么做到呢?

标签: javascriptp5.js

解决方案


您想修复代码中的帧速率还是draw()在特定时间调用函数?如果是这种情况,我认为你不能,因为绘图功能是,如文档中所述

draw() 函数连续执行其块中包含的代码行,直到程序停止或调用 noLoop()

但是如果你想固定帧率,你可以frameRate(number)在 setup() 函数中调用。因此,现在如果您想draw()每秒调用 30 次(或 30 fps 用于游戏参考),您的代码将如下所示。

var e = 1;

function setup() {
    window.canvas = createCanvas(200, 200);
    frameRate(30);
}

function draw() {
    fill(255, 255, 0);
    ellipse(50 + e, 50, 30);
    e++;
}

检查文档以获取更多参考。

快乐编码^^。


推荐阅读