1
resposta

Por que criamos a lista imagemCarro dentro da função preload()?

function preload(){
  imagemDaEstrada = loadImage("imagens/estrada.png");
  imagemDoAtor = loadImage("imagens/ator-1.png");
  imagemCarro = loadImage("imagens/carro-1.png");
  imagemCarro2 = loadImage("imagens/carro-2.png");
  imagemCarro3 = loadImage("imagens/carro-3.png");
  imagemCarros = [imagemCarro, imagemCarro2, imagemCarro3, imagemCarro, imagemCarro2, imagemCarro3];
  somDaTrilha = loadSound("sons/trilha.mp3");
  somDaColisao = loadSound("sons/colidiu.mp3");
  somDoPonto = loadSound("sons/pontos.wav");
}

Por que criamos uma lista de carros dentro da função preload() e não fora dela? E por que não utilizamos a palavra let para criá-la?

1 resposta

Boa tarde Luidi.

Referente a função preload(), ela funciona com o carregamento de imagens externas. De acordo com a documentação de referência do p5.js , a preload() carrega imagens de forma assíncrona. Isso significa que nós precisamos chamar a preload() antes da setup(). Só depois disso que a setup() irá esperar a chamada da imagem que foi carregada no preload().

Referente a não utilização da palavra let, você tem que declarar essas variáveis fora do escopo da função, para que as imagens possam ser acessadas por todo o código. Tipo assim:

let imagemDaEstrada;
let imagemDoAtor;
let imagemCarro;
let imagemCarro2;
let imagemCarro3;
let imagemCarros;
let somDaTrilha;
let somDaColisao;
let somDoPonto;

function preload(){
  imagemDaEstrada = loadImage("imagens/estrada.png");
  imagemDoAtor = loadImage("imagens/ator-1.png");
  imagemCarro = loadImage("imagens/carro-1.png");
  imagemCarro2 = loadImage("imagens/carro-2.png");
  imagemCarro3 = loadImage("imagens/carro-3.png");
  imagemCarros = [imagemCarro, imagemCarro2, imagemCarro3, imagemCarro, imagemCarro2, imagemCarro3];
  somDaTrilha = loadSound("sons/trilha.mp3");
  somDaColisao = loadSound("sons/colidiu.mp3");
  somDoPonto = loadSound("sons/pontos.wav");
}

Você pode dar até uma olhada na referência da função preload(), acho que vai ficar mais claro, tem um exemplo bem simples lá.

Espero ter ajudado.

Bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software