1
resposta

Imagem da Estrada não carrega.

Quando coloco background(imagemDaEstrada) dentro da funcção draw, o p5 diz que imagemDaEstrada não é uma cor válida. Como faço para resolver isso?

let imagemDaEstrada; let imagemDoAtor;

function preload(){ imagemDaEstrada = loadImage("Imagens/estrada.png") } function preload(){ imagemDoAtor = loadImage("Imagens/ator-1.png") }

function setup() { createCanvas(500, 400); }

function draw() { background(imagemDaEstrada); }

1 resposta

Olá, Saulo Duarte, tudo bem?

Testei seu código e me parece que o problema é que ele executa a função preload() duas vezes. Isto não é bom, pois a função preload() é assíncrona, ou seja, não ocorre em conjunto com outra coisa. Em resumo, você conseguiu carregar a imagem da estrada normalmente na primeira vez:

function preload(){
imagemDaEstrada = loadImage("Imagens/estrada.png")
}

Mas na segunda vez que você usa a função, a imagem do ator-1.png (vaquinha) sobrepõe a imagem da estrada:

function preload(){
imagemDoAtor = loadImage("Imagens/ator-1.png") 
}

Tente substituir por este código:

function preload(){
  imagemDaEstrada = loadImage("Imagens/estrada.png") 
  imagemDoAtor = loadImage("Imagens/ator-1.png")
}

Neste código, a função preload carrega tanto a estrada quanto a vaquinha, não havendo sobreposição. Se quiser saber mais, recomendo estudar a documentação da função preload no próprio site do p5js.org (https://p5js.org/reference/#/p5/preload). Espero que tenha ajudado, desejo um ótimo dia!