24/3/2020 ☼ animation ☼ mouvement ☼ grille ☼ p5js
Niveau : ★★★☆☆
Voici l’exemple à étudier et à travailler avec l’éditeur en ligne de p5.js. Les commentaires dans le code permettent de suivre les différentes étapes.
Les différences avec la version flexbox :
/*
Ref :
http://www.joemckaystudio.com/multisketches/
https://stackoverflow.com/questions/39970680/why-are-constants-not-defined-when-using-p5-js-in-instance-mode
https://github.com/processing/p5.js/wiki/Global-and-instance-mode
*/
// Sketch Un
var sketch1 = function(p) {
p.setup = function() {
p.createCanvas(400, 400);
};
p.draw = function() {
p.background("#d8b9c3");
p.fill("#363062");
p.noStroke();
p.rect(200, p.mouseY, 150, 150);
};
};
var myp5 = new p5(sketch1, 'c1');
// Sketch Deux
var sketch2 = function(p) {
p.setup = function() {
p.createCanvas(400, 200);
};
p.draw = function() {
p.background("#827397");
p.fill("#4d4c7d");
p.noStroke();
p.ellipse(p.mouseX, 90, 90, 90);
};
};
var myp5 = new p5(sketch2, 'c2');
// Sketch Trois
var sketch3 = function(p) {
var x = 10;
var y = 40;
var speed = 3;
p.setup = function() {
p.createCanvas(400, 80);
};
p.draw = function() {
p.background("#844685");
p.fill("#f3c623");
p.noStroke();
x += speed;
if(x > p.width){
x = 0;
}
p.ellipse(x,y,20,20);
};
};
var myp5 = new p5(sketch3, 'c3');
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.10.2/p5.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.10.2/addons/p5.sound.min.js"></script>
<link rel="stylesheet" type="text/css" href="style.css">
<meta charset="utf-8" />
</head>
<body>
<script src="sketch.js"></script>
<!-- placer les 3 sketchs avec les id -->
<div id="c1"></div><!-- sketch1 -->
<br><!-- retour à la ligne -->
<div id="c2"></div><!-- sketch2 -->
<br><!-- retour à la ligne -->
<div id="c3"></div><!-- sketch3 -->
</body>
</html>