Het komt vaak voor dat je voor een game of een sketch een timer nodig hebt. Hiervoor zijn meerdere oplossingen in p5js.
- tel een eigen variabele in een while loop. Probleem: je weet niet hoe snel de sketch loopt, want draw() kan sneller of trager zijn. Jouw tel is dus niet de tijd.
- frameRate helpt hierbij, maar lost het niet op.
- frameCount is net wat scherper
- Om oplopende tellers plat te slaan gebruik je de modulo functie.
Voorbeeld code frameCount en modulo
Dezelfde code in een werkende sketch
if (timer > 0 && frameCount % 60 == 0) {
background(220);
text(timer, 150, 200);
timer -= 1;
}
- frameCount is een p5js systeem variabele gevuld met een integer, de huidige frameCount waarde. Meestal 60, als je hardware het bij kan houden.
% 60betekent rest na deling door 60. Dus, een getal tussen 0 en 59. Als de framecount == 60 dan is deze teller per seconde.