Qual è il miglior motore per fare un gioco in stile 16-bit?
Aggiornamento per il 2019: inizialmente avevo detto "Game Maker", ma è da tempo una cattiva idea, sono caduti in disgrazia con il loro modello di sviluppo e di abbonamento. Consiglierei Godot e Unity, entrambi gratuiti. Quello che volete per un buon motore di gioco di pixel art (es. 16-bit), è un gioco renderizzato in una piccola risoluzione, es. 320x200, e poi scalato senza alcuna sfocatura, alla risoluzione nativa dello schermo del sistema di destinazione. Godot fa questo perfettamente, poiché ha un motore 2D dedicato incorporato. Raccomanderei Godot per iniziare rapidamente e facilmente.
Ma a partire dal 2019, raccomanderei Unity rispetto a Godot. Unity ha fatto una revisione sul loro supporto per i giochi di pixel art, e poi si ottiene anche il beneficio di Unity - che significa supporto multipiattaforma, compreso il Nintendo Switch. (Godot può solo esportare ufficialmente sulle piattaforme desktop) e il supporto per la musica MOD, che è un vero formato musicale chiptune a 16 bit.
C'è un blog di Unity sull'aggiunta di una "Pixel perfect camera" nella vostra scena per ottenere questo effetto. 2 pagine;
- 2D Pixel Perfect: How to set up your Unity project for retro 8-bit games - Unity Blog
- 2D Pixel Perfect: How to set up your Unity project for retro 16-bit games - Unity Blog
Oltre a questo, con un add on di terze parti, è ora possibile aggiungere il supporto di palette indicizzate in Unity per i vostri pixel games, che Godot non ha. Cos'è questo? Beh, è la caratteristica dei vecchi giochi retrò in cui si ha lo stesso nemico, ma più difficile, quindi è di un colore diverso, come il rosso. Oppure puoi cambiare squadra cambiando il colore del tuo vestito. Questo è stato fatto con scambi di palette, piuttosto che ricreare un artwork completamente nuovo. Molto efficiente in termini di memoria, e fa anche risparmiare tempo di sviluppo. Ecco un add on chiamato PaletteFX - Ultimate Color Swapping, ed è gratuito! Puoi anche cercare "colour palette" nell'Unity Asset Store e trovare altri add ons.
E Unity ha aggiunto la "Light Weight Render Pipeline" ora rinominata "Standard Renderer", che taglia un bel po' di elaborazione e rende i giochi semplici molto efficienti da eseguire sul web o su dispositivi mobili. Ha ancora un ottimo aspetto, ma è per quando non hai bisogno di effetti folli come l'illuminazione globale o le texture parallasse. Quindi è perfetto per un gioco a 16 bit.
MENZIONI ONORABILI:
LÖVE - Lo adoro, senza doppi sensi. Per quanto riguarda i motori 2D, è sicuramente eccellente per fare giochi retro (ma può fare anche tutti gli altri tipi di giochi 2D). A differenza di Unity o altri motori, si disegna direttamente sul buffer dello schermo come faceva un tradizionale gioco retrò sui vecchi computer, il che significa che si possono facilmente ottenere effetti in stile retrò. Con l'aiuto della comunità, ho ottenuto anche il supporto per le palette. È molto facile da programmare e in realtà molto flessibile e potente. L'unica cosa che lo trattiene rispetto a Unity è che Unity lo batte per il puro supporto della piattaforma. LÖVE si distribuisce su desktop: Win/Mac/Linux e anche sui cellulari: iOS/Android, e anche su Raspberry Pi - ma Unity vince per il supporto della console. Ma a differenza di Unity puoi sviluppare anche su quasi tutte queste piattaforme - l'interprete LUA è disponibile per tutte le piattaforme desktop e anche per il Pi, il che significa che puoi sviluppare il tuo gioco su Linux, Mac, Windows, Pi senza soluzione di continuità, anche cambiare a metà sviluppo, e non c'è differenza. E come Unity, può riprodurre musica MOD (veri formati musicali chiptune) anche se non obbedisce al punto di loop, il che è fastidioso.
Pico-8 e LowRes NX: non mi soffermerò troppo a lungo su questi perché non è facile vendere i tuoi giochi su questi, ma questi sono molto divertenti. (Ho anche fatto un de-make di Alex Kidd con Pico-8! Alex Kidd in Pico World) Sono progettati specificamente per fare giochi retro in modo retro. Sono "emulatori" per un falso sistema di gioco retrò che non è mai esistito. Tu codifichi il tuo gioco e crei la grafica e la musica usando i loro sistemi integrati, come se stessi creando un gioco su un vecchio computer. Entrambi hanno approcci diversi;
Pico-8 ha un renderer raster, il che significa che si disegna direttamente sul buffer dello schermo, e limiti rigidi su ogni risorsa, inclusa la dimensione del codice. Questo è come i vecchi computer a 8 bit.
Mentre LowRes NX non può disegnare direttamente sullo schermo, invece si usano funzioni integrate che usano sprites e tiles per disegnare gli sfondi, il che funziona più come le console di videogiochi a 8 bit. LowResNX inoltre non limita la dimensione del gioco in alcun modo (grafica, codice, livelli ecc.) quindi, a differenza di Pico-8, puoi fare il tuo gioco grande quanto vuoi.
Lo svantaggio di questi due, è il supporto della piattaforma: funzionano solo sui desktop (Win/Mac/Linux). Dico che non è facile vendere i tuoi giochi perché la percezione di questi giochi è che sono pensati per essere divertenti, gratuiti e su piccola scala.
Inoltre devo menzionare Tilengine. Questo è un renderer scanline a 16-bit costruito da zero, con supporto per palette indicizzate, mappe di piastrelle, animazioni di sprite e... effetti scanline, che non sono supportati da Unity o Godot. Gli effetti scanline sono i fantastici effetti di scorrimento ondulato che si vedevano nei giochi Super Nintendo a 16 bit, ed è anche il modo in cui è stato ottenuto il falso rendering 3D "Mode 7". L'unico lato negativo è che questa è una pura libreria C++ che ha bisogno di essere compilata in un progetto più grande. Disegna su byte buffer che poi dovete gestire il rendering sullo schermo in una finestra, con la vostra soluzione. Ha un tutorial su come raggiungere questo obiettivo con la libreria SDL. Sicuramente per programmatori avanzati.
L'esempio qui sotto è in esecuzione all'interno di Tilengine, questo non è un filmato di gioco! Notate che le dimensioni dello schermo sono le moderne widescreeen 16:9, il gioco originale è lo standard 4:3!
Amo i giochi retro, e ne sto facendo uno alla Domarius Games, si chiama "HopSquash!" ed è un party game per 8 giocatori che consiste nell'essere animali carini e schiacciare i tuoi amici :)
Articoli simili
- Qual è un buon motore di gioco 3D per Android che ha la fisica delle auto? Qual è il miglior motore di gioco per giochi 3D?
- È una buona idea scrivere un motore di gioco in Python? Se no, qual è il miglior linguaggio per scrivere un motore di gioco?
- Ci sono dei tutorial per costruire un gioco come Temple Run usando il motore di gioco Unity3D, o qualsiasi altro motore di gioco?
- Che stile di musica suonano gli Aerosmith? Chi o cosa ha ispirato il loro stile generale?
- Quale motore di gioco è superiore per sviluppare giochi VR e AR: Unreal, Unity o un altro motore di gioco?