M. Battiston
Torna ai progetti
  • PC
  • XR

The Last Gunner: No Way Out

Attenzione: orda in arrivo

Uno sparatutto survival a ondate per PC e Meta Quest, sviluppato in Unity 6 da un team di cinque persone.

Ambientato in una Seconda guerra mondiale alternativa travolta da un'infezione causata da gas, il giocatore è bloccato alla torretta di un carro armato immobilizzato da una mina anticarro e lo difende insieme ad Anatolij, un giovane meccanico mandato a recuperare rifornimenti tra un'ondata e l'altra.

Ogni partita è semplice: sopravvivere al maggior numero di ondate possibile e scalare la classifica locale per punteggio, uccisioni e round raggiunto.

Loop principale & combattimento con la torretta

Un unico controller della torretta gestisce il combattimento sia su PC sia in VR.

  • Ho modellato e texturizzato la mitragliatrice della torretta: una MG34 con caricatore a doppio tamburo, scelta per giustificare la capacità storica di 75 colpi senza dover gestire in VR una ricarica a nastro.
  • Ho realizzato le regole del punteggio, leggendo il punto d'impatto dall'hitbox di ogni nemico per premiare i colpi alla testa e la distanza rispetto ai colpi al corpo a bruciapelo.

Il ciclo principale passa da una sola interfaccia ITurretController, così le due piattaforme usano la stessa logica di combattimento senza bilanciamenti diversi. Ho implementato il lato VR.

Compagno NPC & IA

Anatolij, il meccanico, recupera risorse da solo e può essere salvato quando l'orda lo afferra.

  • Rientra in automatico o su comando e consegna all'inventario del giocatore ciò che ha raccolto.
  • Mentre è fuori può essere afferrato dall'orda, innescando un evento di salvataggio a tempo: il giocatore deve colpire l'aggressore senza colpire lui.
  • Ho realizzato il suo ruolo difensivo dentro il carro (la mitragliatrice automatica che presidia sul davanti del veicolo) e ho scritto i cinque scambi di dialogo che i due personaggi si scambiano durante una partita, per portare avanti la narrazione senza filmati.

Crafting & economia di sopravvivenza

I materiali recuperati si combinano in potenziamenti tramite ricette basate su scriptable object.

  • Due oggetti raccolti producono un potenziamento per il meccanico (bende, armatura a piastre, stimolanti) o per la torretta (munizioni, proiettili più potenti, ricariche più rapide), e solo quando il meccanico è dentro il carro.
  • Il punteggio di una partita si converte anche in valuta per un negozio di progressione tra una partita e l'altra.
  • Il mio contributo: il feedback FMOD per le azioni di crafting, mixato nello stesso sistema di bus del resto del gioco.

Menu, impostazioni & localizzazione

Un flusso di menu completo attorno al gioco: menu principale, negozio, classifiche per livello e impostazioni.

  • Le impostazioni coprono display, comandi e audio, con slider separati per volume generale, effetti sonori, musica, ambiente, zombie e spari.
  • L'interfaccia si può cambiare dal vivo tra italiano e inglese.
  • Ogni livello ha la propria classifica, ordinata per punteggio.

Nemici & ondate infinite

Quattro tipi di nemico, ciascuno costruito attorno a un diverso modo di combatterlo.

  • Contadino: lento, e il suo forcone punisce il meccanico.
  • Strisciante: sale sul carro per rubare bottino prima di fuggire.
  • Gonfio: le sue pustole esplodono in un attacco ad area.
  • Spora: cura i nemici vicini.

Li ho modellati e texturizzati tutti e quattro, compresi gli oggetti di scena del Contadino (forcone e cappello), e mi sono occupato di buona parte della loro configurazione nel motore, mentre il team ha costruito sopra l'IA basata su NavMesh e la logica di crescita dell'orda.

Interazione VR & audio

L'implementazione VR e il sistema audio sono stati interamente opera mia.

  • Ho realizzato il caricatore a tamburo con doppia presa, con una maniglia di ricarica guidata dalla fisica e un feedback di rinculo coerente, estendendo io stesso l'XR Interaction Toolkit per supportare prese con offset e regolazione dell'altezza di rilascio, due cose che non gestisce di serie.
  • Ho progettato l'intero sistema FMOD: bus/VCA indipendenti per volume generale, ambiente ed effetti degli zombie, mixati in modo che decine di suoni spazializzati di nemici e ambiente restino leggibili all'interno dello stesso grafo di bus.

Direzione artistica: prima & dopo

Il carro armato rifatto con texture, cavi, tubi e botole
Modello giallo del carro armato con ombreggiatura piatta, la versione originale
Originale (collega)Rifatto

Carro armato: rifatto da zero

Il carro armato originale era stato modellato da un collega. Quando ho preso in mano la direzione artistica e la modellazione, l'ho rifatto da zero.

  • Numero di vertici ridotto da circa 15,5k a circa 6,3k (circa il 59% in meno)
  • Dettagli aggiunti: cavi, tubi, botole e altro
  • Texturizzato in linea con il resto della scena
La mappa finita della fattoria con edifici texturizzati, alberi, nebbia e un cielo rosso sangue al tramonto
Greybox della fattoria con edifici a colori piatti e un carro armato
GreyboxFinale

Fattoria: mappa e grafica

La fattoria è un mio progetto, compreso il layout della mappa. L'ho portata da un greybox alla scena finale completa.

  • Layout e level design miei
  • Tutti i materiali condividono un unico atlante di texture per contenere il costo di rendering
  • Illuminazione e cielo scelti per dare il tono del gioco
Il personaggio finale del meccanico con maschera antigas, tuta e stivali
Modello base grigio low-poly del meccanico
Modello base (collega)Finale

Anatolij: personaggio

Il modello base di Anatolij, il meccanico, era stato realizzato da un collega. L'ho rifatto aggiungendo tutti i dettagli e l'ho texturizzato.

  • Ho aggiunto tutti i dettagli sopra la mesh di base
  • Texturing completo
Lo zombie verde finale con la pelle lacerata e insanguinata, occhi rossi e un largo ghigno, con le braccia protese in avanti
Modello base grigio low-poly, il punto di partenza dello zombie
Modello baseFinale

Zombie: dal modello base all'orda

Lo zombie è partito dallo stesso modello base bianco ed è diventato lo zombie verde che riempie tutto il progetto, dal gameplay alla grafica promozionale.

  • Modellato e texturizzato da me
  • Un unico asset riutilizzabile per l'intera orda

Modelli 3D di questo progetto

PSX Tiger 13DZombie3D

Vedili tra i modelli 3D

Galleria

Visuale dalla torretta mentre spara contro un'orda che avanza nel livello del canyon
Render pulito frontale del modello del personaggio del meccanico
Un fulmine colpisce il campanile di una cattedrale sopra un cimitero inzuppato di pioggia
Render pulito a tre quarti del modello del carro armato
Il carro armato parcheggiato davanti a una fattoria al tramonto