Если вы хотите поддерживать несколько эскизов в одном окне, вам нужно будет использовать режим экземпляра .
По умолчанию P5.js использует глобальное пространство имен для своих переменныхи функции.Поэтому каждый раз, когда вы определяете функцию setup()
или draw()
, вы перезаписываете все предыдущие значения.Вот почему вы видите только последний загруженный эскиз.
Чтобы обойти это, вы можете использовать режим экземпляра для инкапсуляции каждого эскиза в неглобальной области видимости.Вы можете прочитать больше о режиме экземпляра здесь , но вот пример:
var s = function( sketch ) {
var x = 100;
var y = 100;
sketch.setup = function() {
sketch.createCanvas(200, 200);
};
sketch.draw = function() {
sketch.background(0);
sketch.fill(255);
sketch.rect(x,y,50,50);
};
};
var myp5 = new p5(s);
Вы хотите создать новый экземпляр p5
для каждого эскиза.