gpt4 book ai didi

javascript - 使用 p5.js,在 draw 中使用函数时,如何让它只运行一次?

转载 作者:行者123 更新时间:2023-11-30 19:04:34 25 4
gpt4 key购买 nike

我正在为我的一个项目使用 p5.js,但我不明白如何检查是否按下了一个键,当按下时,运行一个函数,但只运行一次。

我在 draw 中有 keyIsDown 函数,因为我需要不断地检查输入,但是当按下一个键时,运行我的函数一次。但是在这个函数运行一次之后,我需要它为我再次按下该键或另一个键做好准备。

它当前正在运行与帧率成正比的函数,我希望它在每次按键时运行一次。一些伪代码看起来像:

function ABC () {
console.log("1")
}

draw () {
when key(1) is pressed:
function ABC()
}

out 会输出“1”但是 5-30 次,即使我尽可能快地点击按键也是如此。问题在于 draw() 不断循环,因此当它检查 keyPressed 时,它会将其注册为已按下几次。

我如何确保该函数仅在每次按钮单击时运行一次,仍然继续等待下一次按钮单击,但运行该函数正常工作?

编辑:

我都试过了:

function keyTyped() {
console.log("a")
if (key === 'a') {
console.log("a")
}
}

function keyPressed() {
console.log("a")
if (key === 'a') {
console.log("a")
}
}

无论我按什么键,都没有任何反应。有些东西应该送到控制台,但什么都没有。

最佳答案

您可以使用 keyPressed() 函数:

function draw() {
// stuff that happens 60 times per second
}

function keyPressed() {
// stuff that happens once per key press
}

您可以在 the reference 中找到更多信息.

另一种方法是创建一个 bool 变量来跟踪您是否已经处理了按键。

关于javascript - 使用 p5.js,在 draw 中使用函数时,如何让它只运行一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59122156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com