Un personaggio che aggira una roccia o passa dietro un albero in un videogioco probabilmente non sembra qualcosa di particolarmente complicato.
Ma quando ho iniziato a lavorare a Luni nel dicembre 2024, riuscire a farlo funzionare in un mondo isometrico 2D è stata una delle prime sfide che volevo affrontare.
E, in un certo senso, è stata anche una prova personale.
Le basi tecniche
Prima di andare troppo avanti nella costruzione del mondo, volevo rispondere a una domanda semplice: potevo far funzionare un ambiente isometrico 2D come lo avevo immaginato?
Per me significava risolvere tre problemi essenziali: la navigazione, il pathfinding e il depth sorting. Sentivo che, se fossi riuscito a far funzionare insieme questi sistemi, avrei avuto la fiducia necessaria per proseguire con il resto del gioco. Per il gioco che volevo creare, consideravo questa una delle maggiori difficoltà tecniche da superare. Ho in mente altre sfide tecniche per Luni, ma quelle appartengono a un altro capitolo.
Tre sfide, un solo mondo
L'obiettivo era abbastanza semplice da descrivere: volevo che i personaggi si muovessero in modo naturale in un ambiente isometrico, aggirassero gli ostacoli e si integrassero visivamente nel mondo che li circondava. Ma c'erano diversi aspetti da considerare.
La navigazione determina come i personaggi si muovono nell'ambiente.
Il pathfinding permette loro di trovare la strada verso una destinazione evitando gli ostacoli.
Il depth sorting crea l'illusione della profondità mostrando personaggi e oggetti nell'ordine corretto. Quando Orin passa dietro un albero, l'albero deve coprirlo. Quando gli passa davanti, accade il contrario.
Presi singolarmente, questi concetti sono relativamente semplici da capire. Farli funzionare insieme in modo coerente in un mondo isometrico 2D era tutt'altra cosa.
Ho trascorso all'incirca i primi due o tre mesi sperimentando con prototipi in C# dentro Unity, provando approcci diversi e costruendo gradualmente una base di cui ero soddisfatto.
Con il progredire dello sviluppo, ho ampliato poco alla volta questi sistemi, introducendo diversi livelli di altezza, pendenze, ostacoli animati e altri elementi che hanno portato nuove sfide.
Ogni aggiunta mi ha richiesto di rivedere e adattare parti dei sistemi esistenti affinché tutto continuasse a funzionare insieme.
Quasi due anni dopo
Da quei primi esperimenti, Luni è cambiato molto. Gran parte del tempo è stata dedicata allo sviluppo delle meccaniche di gioco, alla creazione e al perfezionamento della grafica, alla ricerca della direzione visiva, alla progettazione degli ambienti e alla graduale costruzione del mondo di gioco.
I primi prototipi hanno lasciato spazio a un gioco molto più completo, con un'identità visiva che si è evoluta attraverso numerosi esperimenti.
C'è ancora del lavoro da fare, ma il mondo che vedete oggi è molto più vicino a quello che avevo immaginato all'inizio.
E quei primi sistemi continuano a far parte delle sue fondamenta.

