1
resposta

[Dúvida] Background com um número só

Percebi que na function draw, o background é representado por apenas um número, remetendo a escala de cinza. Eu já fiz um curso de CSS e normalmente tratei os backgrounds com hexadecimais ou RGB. Quando tentei aplicar hexadecimal no background no P5, deu erro.

Qual a diferença aplicada nesta function draw para os backgrounds em CSS? Por que não funcionou hexadecimal aqui?

1 resposta

Oi Davi, tudo certo?

Sua dúvida é muito interessante!

No P5.JS, o padrão de cores é o RGB, que recebe valores de vermelho, verde e azul em uma escala de 0 a 255. Entretanto temos algumas especificações:

  • Quando apenas um parâmetro é passado, uma escala de cinza será considerada;
  • Se um segundo parâmetro é inserido, ele será interpretado como transparência;
  • Com três parâmetros, o RGB é considerado;
  • Com quatro parâmetros, o RGB é considerado e o quarto parâmetro é o grau de transparência.

Mesmo assim, o P5 aceita código hexadecimal e também as strings nomeadas de cores. Para usar esse modo, é necessário que o código esteja dentro de uma função do tipo color() (à qual a função background se encaixa) e entre aspas. Alguns exemplos:

function draw() {
    background(color('#008B8B'));
}
function draw() {
    background('magenta');
}

Vou deixar aqui a referência do próprio P5.JS sobre o uso de cores, assim você pode explorar as diversas formas de colorir seu jogo e descobrir o que é o mais funcional em cada caso:

A página está em inglês. Caso você não esteja confortável com esse idioma, é possível utilizar o tradutor do próprio navegador clicando em qualquer lugar da página com o botão direito do mouse e selecionando traduzir para o português.

Um abraço, Davi! Estou à disposição.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!