如何在 setup() 之外使用 windowWidth 和 windowHeight?
How to use windowWidth and windowHeight outside of setup()?
我需要一个项目的屏幕尺寸,但尝试 windowWidth 和 windowHeight 会产生一个错误,提示我不能在 setup() 之外使用它们。我还尝试将 windowWidth 和 Height 定义为一个新常量,但它只是说该常量尚未定义。
这是我的代码的当前状态(不起作用,但给出了代码的一个很好的概念):
function setup() {
createCanvas(windowWidth, windowHeight);
}
var x = 0;
var y = 0;
var speed = 5;
var laserSpeed = 10;
var laserY = 0;
var laserX = Xwidth;
function draw() {
background(230);
//changing x and y var according to keys pressed
if(keyIsPressed) {
if (key.toString() === "a") {
x -= speed;
}
if (key.toString() === "w") {
y -= speed;
}
if (key.toString() === "d") {
x += speed;
}
if (key.toString() === "s") {
y += speed;
}
}
if(laserX >= width) {
laserY = random(0, height);
}
else {
laserX += laserSpeed;
}
rect(laserX, laserY, 100, 20);
//player
rect(x, y, 20, 20);
}
我不知道如何在处理中做到这一点,但正如 @Peter Paul Kiefer 所述,您通常可以使用变量 width
和 'height
另一种解决方案是
let canvas = document.getElementById('myP5Canvas');
draw(){
...
let cWidth = canvas.width;
let cHeight = canvas.height;
...
}
如果您使用 WIDTH 和 HEIGHT 等全局变量,您可以在代码的任何位置使用它们。
let WIDTH;
let HEIGHT;
function setup() {
WIDTH = windowWidth;
HEIGHT = windowHeight;
createCanvas(WIDTH, HEIGHT);
}
我需要一个项目的屏幕尺寸,但尝试 windowWidth 和 windowHeight 会产生一个错误,提示我不能在 setup() 之外使用它们。我还尝试将 windowWidth 和 Height 定义为一个新常量,但它只是说该常量尚未定义。
这是我的代码的当前状态(不起作用,但给出了代码的一个很好的概念):
function setup() {
createCanvas(windowWidth, windowHeight);
}
var x = 0;
var y = 0;
var speed = 5;
var laserSpeed = 10;
var laserY = 0;
var laserX = Xwidth;
function draw() {
background(230);
//changing x and y var according to keys pressed
if(keyIsPressed) {
if (key.toString() === "a") {
x -= speed;
}
if (key.toString() === "w") {
y -= speed;
}
if (key.toString() === "d") {
x += speed;
}
if (key.toString() === "s") {
y += speed;
}
}
if(laserX >= width) {
laserY = random(0, height);
}
else {
laserX += laserSpeed;
}
rect(laserX, laserY, 100, 20);
//player
rect(x, y, 20, 20);
}
我不知道如何在处理中做到这一点,但正如 @Peter Paul Kiefer 所述,您通常可以使用变量 width
和 'height
另一种解决方案是
let canvas = document.getElementById('myP5Canvas');
draw(){
...
let cWidth = canvas.width;
let cHeight = canvas.height;
...
}
如果您使用 WIDTH 和 HEIGHT 等全局变量,您可以在代码的任何位置使用它们。
let WIDTH;
let HEIGHT;
function setup() {
WIDTH = windowWidth;
HEIGHT = windowHeight;
createCanvas(WIDTH, HEIGHT);
}