Il team di Crate Entertainment ha lanciato Fangs of Asterkarn, la nuova espansione per Grim Dawn che introduce un intero bioma innevato. Questo articolo analizza come il motore proprietario, ereditato da Titan Quest, gestisce l'illuminazione oscura e le fisiche dei resti nemici. Esploreremo le ottimizzazioni in C++, la modellazione degli asset in Maya e la texturizzazione in Photoshop che rendono possibile questa atmosfera gelida e opprimente.
Implementazione tecnica del clima invernale e fisiche dei resti ❄️
Per simulare la neve accumulata, il team ha utilizzato shader personalizzati nel motore proprietario che applicano uno spostamento dinamico dei vertici sui modelli di Maya. L'illuminazione oscura si ottiene tramite un sistema di luce direzionale con attenuazione per altezza, ottimizzato in C++ per mantenere 60 FPS in scene con particelle di bufera di neve. Le fisiche dei resti nemici, come cadaveri congelati che si frammentano all'impatto, sono state implementate con un solver di collisioni semplificato che privilegia la stabilità rispetto al realismo, riducendo il carico della CPU. La texturizzazione in Photoshop ha incluso strati di maschere di brina che si attivano in base alla temperatura del bioma, un dettaglio che rafforza la sensazione di pericolo costante.
Lezioni tecniche per sviluppatori indipendenti 🛠️
Fangs of Asterkarn dimostra che un motore proprietario può competere con soluzioni moderne se si ottimizza la pipeline. L'uso di C++ per gestire il pool di oggetti delle fisiche e il caricamento asincrono delle texture di neve da Photoshop evita cali di prestazioni. Per gli sviluppatori, la chiave sta nel limitare il numero di particelle climatiche e nell'usare Maya per creare asset modulari che si riutilizzino con materiali diversi. Questa espansione è un caso di studio su come la pianificazione tecnica, dalla modellazione all'illuminazione, definisca l'atmosfera di un gioco d'azione.
Come hanno ottimizzato la generazione procedurale della neve e del ghiaccio nei biomi invernali di Fangs of Asterkarn per evitare problemi di prestazioni in Grim Dawn senza sacrificare la densità visiva dell'ambiente?
(PS: uno sviluppatore di giochi è qualcuno che passa 1000 ore a creare un gioco che la gente completa in 2)