Vai al contenuto principale
Torna al blog
Game Dev React Native

Pixel art procedurale senza sprite: rendering con Canvas

Come abbiamo renderizzato l'intera scena visiva di Build Your Empire senza un singolo sprite sheet — solo codice, rettangoli e una palette di colori.

JM
Javier Manzano
CTO & Co-founder • 25 agosto 2026
Pixel art procedurale senza sprite: rendering con Canvas

In Build Your Empire non c’e un singolo file immagine per la grafica di gioco. Niente sprite, niente texture atlas, niente PNG di edifici. Tutto e disegnato in tempo reale con il codice.

L’idea

Ispirati dai giochi Kairosoft (Game Dev Story, Mega Mall Story), volevamo uno stile pixel art ma con un vantaggio: grafica completamente dinamica. La torre del giocatore doveva crescere visivamente quando assumeva dipendenti. Gli edifici dei rivali dovevano riflettere il loro progresso reale.

Come funziona

Usiamo @shopify/react-native-skia per disegnare su un Canvas nativo. L’unita base e un blocco di 8x8 pixel:

function PlayerTower({ x, y, employees }) {
  const level = calculateLevel(employees); // 1-8 piani
  const floors = [];

  for (let i = 0; i < level; i++) {
    floors.push({ x, y: y - i * BLOCK, w: 2 * BLOCK, h: BLOCK, color: '#5b8dd9' });
    if (i % 2 === 0) {
      floors.push({ x: x + 2, y: y - i * BLOCK + 2, w: 4, h: 4, color: '#f4c26b' });
    }
  }
  floors.push({ x: x + 2, y: y - level * BLOCK, w: BLOCK, h: 4, color: '#f4c26b' });

  return floors;
}

La palette

Solo 7 colori definiscono l’intera scena:

ColoreHexUtilizzo
Cielo viola#1a0a3eCielo superiore
Tramonto#e8956bCielo centrale
Oro#f4c26bCielo inferiore, accenti
Blu torre#5b8dd9Edificio del giocatore
Verde terreno#2d5a27Terreno
Viola UI#0d0820Sfondo interfaccia
Bianco finestre#ffffffFinestre illuminate

Vantaggi dell’approccio procedurale

  1. Bundle minimo — nessun asset grafico, app piu leggera
  2. 100% dinamico — gli edifici riflettono lo stato reale del gioco
  3. Facile da modificare — cambiare un colore o una proporzione significa cambiare una costante
  4. Nessun conflitto di risoluzione — nessun ridimensionamento bitmap, sempre nitido
  5. Generativo — ogni partita puo avere variazioni visive

Quando NON usare questo approccio

  • Personaggi con animazioni complesse (meglio con gli sprite)
  • Stili visivi che richiedono texture o gradienti organici
  • Giochi con molti oggetti distinti (il codice scala peggio di un atlas)

Il risultato

Una scena completa — cielo sfumato, 7 edifici, alberi, persone e terreno — renderizzata a 60fps su un iPhone SE. Il tutto con meno di 300 righe di codice di disegno.

Guarda la pixel art in azione →

Non perderti nulla

JM

Javier Manzano

CTO & Co-founder in Soamee

Appassionato di tecnologia e sviluppo software. Condividendo conoscenze e esperienze per aiutare altri sviluppatori a crescere.

Ti è piaciuto questo articolo?

Se hai bisogno di aiuto con il tuo progetto di sviluppo, siamo qui per te.

Pixel art procedurale senza sprite: rendering con Canvas

Raccontaci la tua sfida. Ti proponiamo la soluzione.

Senza impegno. In meno di 24 ore riceverai una proposta con ambito, tempistiche e budget. Nessuna clausola nascosta.

Prenota una call gratuita →