#Learningfriday: Unity Game development

K2Blog#Learningfriday: Unity Game development

Continua il racconto del secondo learning friday tenuto qui in K2.

Nella prima parte abbiamo raccontato l’inizio del learning friday dedicato a unity.

Il nostro Daniele Del Monte durante il suo intervento ha spiegato tutte le funzionalità di Unity e i passi da seguire nel game development.

Di seguito racconteremo le ultime funzionalità raccontateci da Daniele.

4)Set up progetto

Per gestire i nostri progetti, Unity ha rilasciato una Unity Hub. In questa Hub c’è ad esempio la sezione “Learn” che permette di spiegare come funzionano i progetti stessi. Quando viene creato un nuovo progetto, si devono definire alcune sezioni:

  • il Project Name;
  • la Location, ossia il locale in cui viene salvato il progetto;
  • la Organization, che permette di creare un team dove è possibile caricare in Cloud che fornisce direttamente Unity. Attraverso pull e push si possono condividere codici, texture e tutto ciò che serve al progetto per lavorare insieme, senza dover scaricare kit a parte.
  • la Template, che si differenzia per 2D, 3D, 3D with Extra, RP. Quest’ultima, la Render Pipeline, racchiude una serie di funzionalità che permettono di ottimizzare in base al target il proprio gioco. Per esempio Lightweight RP, essendo molto leggere, come si intuisce dal nome, sono ottime per il mobile.

5)Fisica del videogioco

Arriviamo alla parte forse più divertente: la fisica del videogioco. Le componenti principali in Unity sono due: i Collider e i Rigidbody.

Se il personaggio non ha un Collider, quando andrà addosso a una superficie o ad un altro personaggio, lo compenetrerà. Il Collider permette dunque ad un altro Collider di potersi scontrare senza compenetrarsi. Il Rigidbody dà fisica a un personaggio, semplificando moltissimo la simulazione di gravità e fisica (ad esempio aggiungendo Massa o attrito).

6)Assets Store

L’Assets Store, per chi si trova agli inizi, rappresenta un ottimo aiuto per poter sviluppare un gioco di buona fattura.Esso è un negozio che permette di vendere i propri prodotti (assets). Un Assets è un piccolo pacchetto, una parte di videogioco che si può mettere in vendita. Da questo punto di vista, l’aspetto positivo di Unity è che gli Assets sono molto economici rispetto ad esempio ad Unreal Engine.

Esistono molti tipi di Assets: FPS, Environment, modelli 3D, animazioni ecc. Ne esistono di tutti i tipi e ciò che piace di più alla community di Unity è appunto il prezzo molto accessibile.

Il mercato di Unreal Engine è invece proibitivo per i più, anche perché esso viene utilizzato per progetti complessi, per i quali viene investito molto. Si pensi che la media minima di Assets è di 50-100 dollari al pezzo. Sono modelli di ottima fattura, ma che non tutti possono permettersi.

7)Figure di sviluppo

Chi sono le differenti figure che contribuiscono alla creazione di un videogioco?

Andiamo a vederle una per una:

  • Game designer: è forse la figura di sviluppo principale, ha un ruolo chiave. Questa persona deve avere una conoscenza perlomeno basilare di tutti i campi che si occupano dello sviluppo di un videogioco. È la persona che tira le redini: prende le idee proposte dal team e le rende giocabili, divertenti, interattive. Inoltre manda avanti il progetto, presenta ad altri il gioco.
  • Programmatore: altra figura fondamentale. Ne esistono in particolare 4 tipologie: Gameplay Programmer, che si occupa delle interazioni all’interno del gioco, come il movimento di un personaggio; UI/UMG Programmer, che si occupa delle interazioni dei menu; Networking Programmer, che si occupa della comunicazione multigiocatore, ed è oggi un ruolo fondamentale, data la diffusione del multigiocatore; AI Programmer, colui che si occupa dell’AI dei nemici, un ruolo molto complesso perché consiste nel creare un vero e proprio cervello ai personaggi e farli adattare a tantissime situazioni, tenendo conto di molte variabili.
  • 3D Designer: crea i modelli 3D. All’interno di questa categoria c’è il Model Builder che crea modelli, le mesh da inserire nel gioco; il Level Builder che crea scenari e inserisce e posiziona nel gioco i modelli; il Character Builder che crea i personaggi, li scolpisce e dà loro forma; il Texture Artist che si occupa di colorare i modelli 3D.
  • Addetto ai suoni: in questa categoria rientra il Compositore che crea le musiche e le soundtrack e il Sound Programmer, che inserisce le tracce nel gioco, facendole partire in caso di determinati eventi, gestendone tutte le variabili.
  • Animatori: si occupano delle animazioni. Questa è la figura forse più completa, ma anche straziante, a detta del nostro Daniele, perché animare è molto complesso. In particolare l’Ambient Animator anima tutto lo sfondo dei videogiochi (le foglie che si muovono, le rocce che si rompono ecc.), mentre il Character Animator anima il personaggio, anche grazie a diversi strumenti che ormai permettono di copiare movimenti di persone reali e inserirli nel programma.

Ogni figura ha la propria importanza e contribuisce alla creazione di un prodotto unitario.