[英]How to Render a Single p5.js Sketch to Multiple Divs
我正在嘗試在多個 div 中使用單個 p5 草圖。
目前使用下面的代碼。 我曾嘗試使用 class 選擇器,但它似乎只適用於父方法(例如,不適用於 getElementById。)作為另一種解決方法,我也無法讓這個 p5 草圖成為主體選擇器中的背景元素。 謝謝您的幫助!
let theShader;
function preload() {
theShader = loadShader('shader.vert', 'shader.frag');
}
function setup() {
pixelDensity(1);
let myCanvas = createCanvas(windowWidth, windowHeight, WEBGL);
myCanvas.parent('container1');
}
function draw() {
shader(theShader);
theShader.setUniform("u_resolution", [width, height]);
theShader.setUniform("u_time", millis() / 1000.0);
theShader.setUniform("u_mouse", [mouseX, map(mouseY, 0, height, height, 0)]);
rect(0.0, 0.0, 1.0, 1.0);
}
function windowResized() {
resizeCanvas(windowWidth, windowHeight);
}
不確定它是否像那樣工作。 但是您可以嘗試創建 canvas 元素而不是 div 元素。 歸根結底,一個 p5 草圖也是一個 canvas 元素。
然后你應該可以拿到新的 canvas:
let newCanvasCtx = newCanvas.getContext('2d');
然后調用drawImage並傳入p5 canvas:
newCanvasCtx.drawImage(p5Canvas, 0, 0);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.