Iniziamo dicendo che, nel corso degli anni, il Game Development è diventata un’industria molto fruttuosa quanto rischiosa, in quanto l’offerta sempre maggiore porta a maggiore concorrenza in un mercato che fa muovere miliardi di dollari ogni anno.
La figura maggiormente associata a questo ambito, dopo il Game Designer, è proprio il Game Developer, ovvero uno sviluppatore che, collaborando in team spesso formati da più di 40 collaboratori, stila migliaia di righe di codice che daranno vera e propria vita al videogioco.
Indice dei contenuti
Game development: che cos’è?
Il Game Development, o sviluppo di videogiochi, è l’ambito in cui agiscono svariate figure professionali specializzate, a partire dai producer che finanziano ed accolgono il concept, passando per i 3D Artist che creano i modelli tridimensionali, gli effetti visivi e le animazioni, fino ad arrivare al Game Developer che, oltre a sviluppare il codice per la creazione del videogame, prenderà parte anche ad altre fasi della realizzazione del prodotto finale, assieme al Game Designer.
Come nasce un videogioco
Lo sviluppo di un videogioco ha un suo ciclo di vita e richiede tempo e risorse. Le fasi salienti dello sviluppo del videogioco si possono riassumere approssimativamente così:
- Nascita del concept
- Approvazione del concept da parte del publisher
- Creazione di un documento di Game Design
- Realizzazione di una Concept Art
- Creazione di una Vertical slice, cioè di un prototipo funzionante
- Completamento della sezione di Gameplay, così detta versione Alpha
- Processo di rifinitura e Controllo Qualità (QA) – si entra nella fase Beta del gioco
- Promozione del videogame tramite operazioni di marketing
- Controllo delle linee guida, da parte dei produttori di hardware, per ogni console
- Lancio della build definitiva sul mercato
Vediamo ora, nel dettaglio e suddivise per aree di competenza, le figure professionali che compongono un team di sviluppo videogame.
Area game design
- Game designer:
Anche detto autore di giochi è colui che si occupa di ideare, scrivere e strutturare le dinamiche e le regole del gioco stesso
- Lead designer:
Come dice la parola stessa, è una figura a capo del team di design, svolge spesso le stesse mansioni del designer e in più, a volte, si occupa di presentare la versione finale del prodotto ai media.
- Level designer:
Si occupa di far avere all’utente una buona User Experience, tramite l’ideazione e creazione di diversi livelli del gioco.
- Writer:
Lo sceneggiatore, o Writer, si occupa di scrivere la trama del gioco, le voci fuori campo ed i dialoghi fra i vari personaggi.
Area programmazione
- Capo programmatore:
Anche detto Lead manager, si occupa di gestire il team di programmazione ed ha un contatto diretto sia con il producer sia con l’area design.
- Programmatore:
Anche conosciuto come Game developer, è una figura che si occupa di tramutare in codice l’ideazione del Game designer e di ottimizzarlo al fine di assicurare un corretto gameplay.
Più avanti vedremo a quali tool e linguaggi ricorre per svolgere il proprio lavoro.
Diciamo intanto che esistono figure specializzate per ogni aspetto di sviluppo del gioco, dalla creazione del codice sorgente, alla programmazione grafica, all’intelligenza artificiale e così via.
Area visiva
Il team artistico vede a capo il Direttore artistico che, assieme al Game designer e al Producer, si occupa dell’intera attività produttiva del team stesso.
Il team artistico ha al suo interno varie figure che si occupano dell’allestimento della scena del gioco, della realizzazione degli storyboard, dell’elaborazione di oggetti in 3D, della creazione delle texture all’interno del gioco, della creazione dei personaggi fisici fino alla realizzazione di movimenti verosimili o motion capture.
Area sonora
- Sound designer:
In collaborazione con il team di programmazione e di design, il sound designer si occupa di tutto ciò che concerne la realizzazione dei suoni all’interno del gioco, come: effetti sonori, suoni ambientali, doppiaggio dei personaggi.
- Compositore:
Si occupa dell’ideazione e realizzazione delle colonne sonore e musiche personalizzate per ogni videogame. Esse vengono create partendo da strumenti veri ma spesso, i compositori si avvalgono dell’utilizzo di sintetizzatori.
- Audio engineer:
L’ingegnere del suono , o Audio engineer, si occupa di gestire tutta la strumentazione ed i software coinvolti nella produzione, registrazione e missaggio del suono all’interno del videogame.
Area produttiva
- Game director:
Spesso rappresentato dallo stesso Game designer, si occupa di gestire tutto lo staff coinvolto nella realizzazione del videogame.
- Producer:
Si occupa della supervisione dell’intero progetto e del lavoro d’insieme del team, nonché svolge un ruolo cruciale sulla gestione del budget e nel monitoraggio dei tempi di realizzazione e scadenze.
Assiste il producer nella definizione del budget e nell’assicurarsi che vengano rispettate le scadenze.
- Assistant producer:
Lavora a stretto contatto del producer e si occupa spesso anche del publishing, gestisce quindi tutte le fasi di distribuzione, pubblicità e public relations con il pubblico, tramite forum e chat.
- Game tester:
A differenza da ciò che ci suggerisce il nome, questa figura professionale non si occupa solo di giocare ai videogiochi, bensì li deve testare, riportando qualsiasi bug che comprometta la user experience.
- Lead tester:
A capo del team di testing del gioco, lavora a stretto contatto con il producer ed il Game designer per la realizzazione del piano di testing.
Game development: tool e linguaggi più comuni
Ciò che salva la vita ai Game Developer in fase di sviluppo di un videogioco sono i Game Engine, ovvero dei software di sviluppo che semplificano e snelliscono il lavoro.
Tre programmi molti utilizzati, nonché gratuiti, sono:
- Unity: consente lo sviluppo dei videogiochi, animazioni 3D ed altri contenuti interattivi.
- Unreal Engine: più potente e complesso da utilizzare, è un motore grafico sviluppato da Epic Games.
- CryEngine: sviluppato da Crytek per lo sparatutto in persona Far Cry, ne fu poi sviluppata una versione open source.
Tra i linguaggi di programmazione più utilizzati troviamo sicuramente Python, C, C#, C++ e Java.