3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 00/il viaggio
Nessuna grande avventura inizia senza un lungo
viaggio, freccia argento e trenitalia erano i nomi
che mi “bombardavano” la testa nella settimana
precedente al corso, come molti sapranno
e sicuramente avranno vissuto sulle proprie spalle,
quando si parla di viaggi in treno e soprattutto
di trenitalia, beh un brivido freddo sale dietro
la schiena e terrorizza non poco, ma fortunatamente
questo lungo viaggio, Roma-Mestre è stato
tra i più tranquilli della mia vita, ben diverso dal treno
regionale che solitamente da Roma mi porta in patria
(Venafro, Molise), il freccia argento è un ottimo treno,
confortevole e pulito, permette di rilassarsi
con un film o qualche videogame senza dar fastidio
al “vicino di viaggio” o a costringerci in posizioni
assurde per trovare il giusto compromesso tra visibilità
e stabilità del proprio portatile ad esempio.
Il viaggio, dalla durata di 3:30h l’ho impegnato per
la prima mezz’oretta a completare dei lavoretti
in sospeso, il resto del tempo guardando “Ralph
spaccatutto” (tanto per rimanere in tema CG)
e facendo qualche partitina con il mio fido
e onnipresente compagno di viaggio “Nintendo 3DS”
tra battute di caccia a “Monster Hunter”
e qualche annaffiata di fiori nel mio mite villaggio
in “Animal Crossing”.
Arrivo finalmente a Mestre, dopo qualche sbattimento
per trovare l’autobus riesco a salire e mi dirigo
a Portegrandi, un paese immerso nel “nulla”
Portegrandi, infatti è una piccola frazione di Quarto
d’Altino, in provincia di Venezia caratterizzato
fondamentalmente da una chiesa, una locanda
e un fiume che lo attraversa, il Sile.
Certo non una meta ambita da un qualsiasi 23enne,
ma ha sicuramente il suo fascino un paese immerso
nel verde attraversato da un fiume e con un’incredibile
e rilassante atmosfera.
Arrivato in albergo mi sistemo e scendo subito per
cenare, dopo un lungo viaggio la fame si fa sentire!
Dei taglioni al pesto di pistacchio e noci, pasto
particolare che non ho mai trovato da nessuna parte,
devo ammettere che il sapore non era niente male!
Finita la cena risalgo in camera, è ora di dormire, avevo
una giornata molto particolare da affrontare,
buona notte!!!
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 01/benvenuti a BigRock
Sveglia alle 8:00, colazione e via a scuola, BigRock
è una scuola molto particolare, da quello che ho
sentito parlando con altri studenti l’edificio nasce
come fattoria, solo in un secondo momento divenne
BigRock, fa uno strano effetto sapere una cosa simile,
come due “attività” estremamente opposte e diverse
siano state realizzate nello stesso luogo.
Entro in aula e faccio la conoscenza dei miei compagni
di corso per le prossime due settimane, Francesco,
Dario, Nicola, Gianluca, Glenn, Andrea e Matteo.
Insieme a loro ovviamente gli insegnati, Leonardo
(insegnante di Maya), Lorenzo (insegnante “della parte
artistica” di Unity3D) e Matteo (insegnante della parte
di visual scripting in Unity3D).
Ci mostrano la scuola, qualche lavoro fatto negli anni
passati e ci introducono al corso, la prima settimana
sarà incentrata sulla modellazione e il texturing 3D,
la seconda sarà focalizzata totalmente su Unity3D.
Iniziamo subito, Maya e modellazione 3D, non sono
esattamente un neofita del tema, certamente non
posso definirmi un esperto, ho iniziato da poco ma
parto sicuramente avvantaggiato, so di cosa stiamo
parlando e quali possono essere le criticità di un 3D
Artist in generale, non conosco bene come funziona
in ambito videoludico la modellazione, ma sono qui per
questo dopotutto no?
Iniziamo a vedere interfaccia e tool basici del software,
con qualche esercizio per impratichirsi con il tutto.
Cosa particolare del metodo di insegnamento in
BigRock è “l’impossessarsi dello schermo degli alunni”
o meglio, i computer (tutti iMac) vengono bloccati dai
docenti in modo che gli alunni non possano continuare
a lavorare e parte in automatico lo streaming dello
schermo del docente, dove si vede cosa sta facendo
insieme alla spiegazione, sicuramente molto comodo
rispetto ad altri mezzi come proiettori o lavagne.
Altra cosa singolare, la nostra aula, ha un’intera parete
lavagna, molto originale, utile e creativa.
Spiegate le prime cose iniziamo a lavorare, ogni lavoro
dovrà essere consegnato a fine giornata entro le 18:30
orario di fine lezione, rinominandolo con il proprio
nome e cognome e inviarlo sul server.
Il primo giorno di lezione ci ha riservato subito una
sorpresa, direttamente da Londra, dagli studi di MPC
è venuto a tenere un incontro speciale Daniele Orsetti,
per chi non lo sapesse MPC è uno dei più grandi studi
di effetti speciali per il cinema, Daniele ha lavorato ad
esempio a film come Man of steel, Prometheus
e World War Z, durante l’incontro ci ha parlato dei flussi
di lavoro in grandi aziende come la sua, le pipeline che
vengono adottate e cosa producono, tra modellazione
3D, texturing, shading e compositing ci ha mostrato
passo dopo passo come vengono realizzate immagini
stupefacenti foto realistiche che poi vanno a finire sul
grande schermo del cinema.
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 02/BZ e UV
Il secondo giorno si ritorna in aula, la “missione” è
realizzare un modello 3D di un fucile al quale poi
saranno stese le UV e texturizzato.
Veniamo anche a conoscenza di cosa andremo a
produrre a fine corso, una piccola demo di uno spacer
che si muoverà in un ambiente 3D futuristico e andrà
ad uccidere dei ragni alieni giganti.
Bene, inizia la giornata... lo ammetto modellare mi
piace è divertente e stimolante sotto molti punti di
vista, ma se c’è una cosa che ho capito di odiare è
aprire le uv... spieghiamoci meglio, una volta realizzato
il modello 3D per poterlo texturizzare è necessario
aprirne le UV, ovvero prendere il modello 3D, e aprirlo
in modo da “spalmarlo” su un piano bidimensionale,
per capirci, prendi il mappamondo, spaccalo a metà e
ricavane un planisfero, solo che con la modellazione
quasi mai bisogna unfoldare un oggetto semplice
come una sfera, ma bisogna farlo anche e soprattutto
con dei charachter, ambienti, pistole (come un questo
caso) e tutto quello che si è realizzato in 3D.
Vi posso assicurare che il procedimento non è per
niente user friendly né tanto meno piacevole!!!
Ma questo è un lavoro che qualcuno deve pur fare e
che mi piaccia o no, va fatto!!!
Quindi armato di tanta pazienza e buona volontà
inizio a stendere queste maledette UV, fortuna che in
questa giornata ci viene introdotto “BZ”, no, se state
pensando ad un tool particolarmente intelligente da
unfoldare tutto e aprirci alla perfezione le UV state
sbagliando di grosso, BZ è più qualcosa come: “sto
sclerando per il troppo lavoro, devo distruggere
ASSOLUTAMENTE qualcosa!!!”
BZ altri non è che un piccolo giochetto, al quale
partecipano tutti i ragazzi della scuola connettendosi
al server, lo scopo del gioco? Semplice, distruggere
tutti gli avversari in rischiosissime partite death match,
rischiosissime perché si rischia seriamente di mettere
in gioco amicizie! BZ è il classico gioco bastardo,
scusate il termine, dove si pilota un carro armato
e bisogna distruggere gli avversari, solo che ci sono un
mucchio di powerup che ad esempio fanno diventare
il giocatore invisibile oppure ci armano con un super
cannone laser e altre cosette simpatiche.
La cosa più bella è che urlando a squarcia gola
“DENTROOOO!!!!” per i corridoi, tutti, tra studenti
e insegnanti loggano in BZ per darsi guerra!
Passatempo molto simpatico, dovrebbe essere
adottato da tutte le aziende e scuole per spezzare
la monotonia e staccarsi 5 minuti dal lavoro.
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 03/remeshing
Durante il terzo giorno di lezione abbiamo perfezionato
la modellazione del fucile, aggiungendo dettagli
e stando attenti a non spostare i vertici della mesh
in modo errato, il target del giorno era realizzare
un modello con un alto numero di poligoni
da remeshare in un secondo modello a basso numero
di poligoni, il così detto low poly.
Probabilmente starete pensando: “a che mi serve
lavorare con un elevato numero di poligoni se poi
nel mio progetto dovrò assolutamente utilizzare un
modello low poly?”
Ovviamente ha il suo senso, dal modello HP è possibile
ricavare una normal map, ovvero una sorta di texture
che “inganna” la luce simulando dei basso rilievi sul
modello LP.
Spieghiamoci meglio, la normal map non scolpisce
la geometria ma simula delle superfici modellate,
per fare ciò si modella in alta definizione la mesh,
da questa mesh in alta definizione si ricava la normal
map che viene poi applicata sul modello a basso
numero di poligoni, così facendo il modello a basso
numero di poligoni, privo di qualunque dettaglio,
acquisisce moltissima qualità, avvicinandosi
ad un modello HP.
Ovviamente il risultato è solo “simulato” i dettagli non
vengono realmente modellati, questo permette di avere
un ottimo bilanciamento una volta ingame tra qualità
e prestazioni, i poligoni sono pochi ma il dettaglio è
comunque presente, un ottimo colpo d’occhio!
Per quanto riguarda il remeshing... il procedimento
non è particolarmente complesso, basta tener conto
solo di alcune piccole accortezze, cioè, non “piazzare”
poligoni con 5 o più facce, evitare poligoni triangolari
se possibile (specialmente se il modello 3D dovrà
muoversi) e ovviamente non esagerare con i poligoni,
altrimenti a cosa dovrebbe servire il remeshing?
La tecnica è semplice, si disegnano letteralmente
i poligoni direttamente sulla mesh che abbiamo
modellato, questo è possibile ancorandoci proprio
sul modello, quando andremo a disegnare i poligoni,
questi si snapperanno direttamente sulla mesh,
abbiamo bisogno solo di un po’ di pazienza e tempo,
il resto viene da se.
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 04/texturing e singanajo
Il quarto giorno prende una “piega” inaspettata,
se durante le canoniche ore di lezioni le abbiamo
passate a texturizzare l’arma in photoshop, la serata
si prospettava particolarmente movimentata; H-Farm,
un’incubatrice di start up a pochi metri da BigRock
ha organizzato per la sera una festa privata, dove
tutti gli elementi di BigRock, alunni e insegnanti sono
invitati, “dress code: Mustache”, fortunatamente sono
partito senza rasoio e avevo abbastanza baffi da
sfoggiare, questo mi ha garantito una soddisfacente
cena gratuita a base di rustici, pasta, riso e quant’altro
con un’abbondante riserva di birra fresca, ottimo modo
per affrontare una festa!
Un minimo di rammarico però è da sottolineare, nelle
precedenti edizioni di questa festa vi era la possibilità
di vincere dei sostanziosi premi, tipo ipad, apple tv e
altri interessanti apparecchi tecnologici che fanno gola,
purtroppo quest’anno non c’era questa possibilità,
peccato, sarebbe stato bello tentare la fortuna
e magari aggiudicarsi un bell’ aggeggino di questi!!!
Per finire in bellezza un bel cannone a centro della
pista a sparare schiuma a palla!
Resoconto della giornata: arma texturizzata, stomaco
pieno, tasso alcolico non di certo a 0, panni zuppi per
via della schiuma.
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 05/giochi di ombre
Ultimo giorno di lezione per quanto riguarda il mondo
infinito di Maya, c’è da finalizzare il modello 3D
e da caricare il risultato finale sul server, anche
se durante questa settimana non abbiamo affrontato
tutti gli argomenti inerenti alla grafica 3D quali rigging,
animazione e lighting e rendering le cose apprese sono
state moltissime, anche io che non partivo esattamente
da zero ho imparato un mucchio di tips e tecniche
per modellare al meglio tutto quello che mi passa
per la testa, lo ammetto, mi ritengo decisamente
soddisfatto della prima settimana di lezione, peccato
sia già finita!!!
Il dovere chiama, le ore di lezione passano
velocemente c’è da completare l’arma, texture, normal
map e specular map (per le riflessioni della luce)
e ambient occlusion non si fanno certamente da sole,
tutti ci mettiamo a lavoro e riusciamo a chiudere
il progetto in tempo per la consegna, esportando
un file fbx adatto per essere importato in unity.
La prima settimana è andata, ora del meritato riposo
e poi si ricomincia con qualcosa di totalmente nuovo...
Unity 3D!!!
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 06/unity
Il fine settimana è passato, ho visitato Venezia
e per sbaglio Jesolo, si... per sbaglio, la verità
è che tornando da Venezia mi sono addormentato
sull’autobus e mi sono risvegliato a Jesolo, non ridete
di me (:P) piccola parentesi, Venezia è spettacolare,
se non ci siete ancora mai andati, beh ADATECI!!!
Riprendiamo da dove ci siamo lasciati, la prima
settimana si è conclusa con un mitra modellato in 3D,
al quale abbiamo applicato ovviamente una texture
per dargli carattere, una normal map per raggiungere
un livello di dettaglio maggiore, una specular map
per definire i punti di luce speculari sul modello 3D
e un ambient occlusion map che in realtà abbiamo
applicato direttamente alla texture, l’ambient occlusion
per chi non lo sapesse è quel fenomeno fisico che
si verifica nei punti dove due oggetti si toccano e dove
quindi la luce non arriva allo stesso modo, se vedete
ad esempio gli spigoli della vostra camera hanno una
piccola ombra proprio nell’intersezione tra il soffitto
e il muro, esattamente sullo spigolo.
Oggi si affronta un tema totalmente nuovo, almeno per
me... è ovvio.
Unity 3D, questo engine nato non troppo tempo
sta conquistando tutto il mondo, applicato in primis
nello sviluppo di videogame, in special modo tra gli
sviluppatori indipendenti, ma anche in ambito militare,
medicinale e della comunicazione pubblicitaria, realtà
aumentata etc...
Unity 3D è una piattaforma vastissima, che permette
di realizzare qualunque fantasia abbiate per la testa,
ottimo strumento per coordinarsi in team, per realizzare
prodotti in singolo o anche semplicemente per passa
tempo, Unity è acquistabile con licenza pro oppure è
scaricabile in maniera totalmente gratuita per iniziare
a sviluppare tutto quello che vogliamo, con veramente
pochissime limitazioni.
Automaticamente Unity è in grado di compilare e
impacchettare eseguibili per PC, Mac, iOS, Android,
Windows Phone e Unity web player, ma non solo, Unity
3D viene supportato anche dalle grandi Home console,
quali Xbox 360, PS3 e Wii, c’è veramente di tutto per
tutti i gusti, i porting sono velocissimi e semplicissimi
da effettuare, basta acquistare la licenza ed è fatta!
La prima giornata di lezione su Unity 3D viene
impegnata per capire l’interfaccia grafica, con
spiegazioni di elementi basici come gli Assets,
le scene, i package e i prefab, per finire abbiamo
iniziato a creare il primo layout del livello destinato alla
“demo della demo” sullo spacer e il ragno assassino!
Durante questa settimana inoltre l’unica consegna sarà
l’ultimo giorno di lezione con la piccola demo finita
e impacchettata come eseguibile.
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 07/e luce fu
Settimo giorno di lezione, fondamenta di lighting
e shading in Unity, abbiamo imparato le differenze
tra spot light, area light, directional light e point light,
abbiamo visto alcuni materiali in Unity, molto diversi
rispetto a Maya, ci sono materiali diffuse, dove l’unico
elemento caratteristico è l’applicazione della texture,
quindi privo di speculari o altri dettagli, il materiale
bumped-diffuse simile al precedente ma con la
possibilità di aggiungervi una normal map, poi ancora:
materiali trasparenti, con speculare, rilfessivi e emissivi.
Abbiamo visto molte altre cose, quali lo skybox,
ovvero il cielo di sfondo in unity, come si realizza e
come si imposta, ma la cosa più interessante di tutte
è stata la lightmap applicata su tutto il livello, la light
map disegna letteralmente le ombre sulle texture,
questo permette di disattivare luci in real time ed
avere comunque delle ombre nel livello, perseverando
un’estetica impeccabile e ottime prestazioni, questo
procedimento è indispensabile ad esempio nei giochi
mobile, dove la potenza delle macchine non è eccelsa
e le luci in real time richiedono moltissime risorse.
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 08/la mia porta è un trigger
L’ottavo giorno ci introduce una plugin strepitosa,
tutti sappiamo che per realizzare un videogame
è importante avere un comparto grafico di tutto
rispetto, con stile e qualità delle immagini, ma il tutto
è totalmente inutile se non si è capaci di programmare
un videogioco, essenzialmente la programmazione è
il cuore pulsante di un gioco, proprio come nel corpo
umano, i muscoli, lo scheletro e tutto quello che
vediamo ad occhio nudo non potrebbero mai muoversi
se non ci fosse il cuore a spingere il sangue nelle
vene e a renderci vivi, senza di esso infatti saremmo
semplicemente delle carcasse inanimate.
La programmazione è esattamente questo, il cuore
di tutto, puoi essere il grafico più bravo al mondo,
puoi fare animazioni da urlo, ma se non si riesce a far
funzionare il tutto non si va da nessuna parte.
Molto spesso però un art, non è capace di
programmare, Playmaker ci aiuta proprio in questo,
è un plugin che munisce Unity di un editor di script
visuali, il tutto tramite nodi.
Io che ho passato l’adolescenza su “rpg maker” sono
stato colpito dalla sua semplicità e dalla incredibile
similitudine con il software citato, fondamentalmente
possiamo fare tutto quello che ci pare tramite
Playmaker, non abbiamo la flessibilità di un codice
pure è ovvio, ma con un po’ di ingegno si possono
raggiungere ottimi risultati, durante le ore di lezioni noi
abbiamo realizzato l’apertura e la chiusura di alcune
porte nel nostro livello di gioco, il tutto tramite “trigger”
e Playmaker, cos’è un trigger: il trigger è un box
trasparente che funge da interruttore, se entro nel
trigger allora si verificano determinati eventi, un trigger
nella vita reale può essere la porta di casa nostra,
aperta entriamo in casa e iniziamo ad interagire con gli
altri, idem è il trigger.
Ovviamente le interazioni tra giocatore e trigger
possono essere molteplici ed infinite, si possono
adattare a qualunque esigenza, basta sapere cose si
vuol fare e cosa deve succedere al giocatore che entra
in quel determinato trigger.
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 09/videogamer day
Penultimo giorno di lezione, anche oggi studieremo
Playmaker e lo sfrutteremo per creare una simulazione
di punta e clicca, nello specifico: ho il mio eroe (una
sfera nel nostro caso) che si muove su un piano
a seconda di dove andremo a cliccare, quando
clicchiamo sul piano viene visualizzato un cursore che
ci fa vedere dove abbiamo cliccato, la sfera si muoverà
esattamente in quella direzione, tutto questo senza
scrivere una sola riga di codice.
Dopo il punta e clicca è ora di vedere le Nav Mesh,
le nav mesh sono usate per determinare un’area
calpestabile ai nemici o comunque a personaggi
che non sono il giocatore, quest’area viene calcolata
tramite nav mesh con un processo di bake, possiamo
definire cosa vogliamo far calpestare e cosa e no,
nel caso, possiamo dire ai nemici ad esempio se un
determinato oggetto può essere saltato o aggirato,
il tutto ovviamente con parametri personalizzabili.
Ultima pillola giornaliera è stata l’inserimento di
elementi particellari in scena, ovvero: fuoco, polvere,
fumo, spruzzi d’acqua etc...
Gli effetti particellari donano un enorme realismo nel
gioco, sono composti principalmente da delle immagini
in png che vengono emesse dallo stesso punto,
possiamo decidere se farle emettere in modo lineare,
veloce, più o meno grandi o personalizzare la quantità
di particelle emesse.
La giornata non finisce come al solito, innanzitutto,
dopo la lezione facciamo una video chiamata su
Skype molto particolare... dagli studi di infinity ward
di Activision, abbiamo l’onore di chiacchierare con
Bernardo Antoniazzi, Technical Art Director del team,
che ha lavorato a numerosissimi titoli della saga Call of
Duty, ultima fatica è proprio COD ghosts in procinto di
uscita sulle console casalinghe di ultima generazione,
ci mostra qualche (spettacolare) lavoro che ha fatto
e ci racconta come funziona a grandi linee il lavoro in
un’azienda come activision.
Ma la giornata non è ancora finita, oggi infatti c’è la
festa dei gamer, BigRock ha organizzato una festicciola
a base di pizza, birra e videogiochi, tutti possono
sfidarsi in un lan party a giochi come call of duty, team
fortress, tekken o fifa.
Ma non mancano anche giochi come il biliardino o il
tavolo da ping pong, una bella serata per spezzare la
monotonia e rilassare la mente.
3D GAME ART
SUMMER CAMP
@ BIGROCK
GIORNO 10/see you BigRock
Ultimo giorno, oggi si chiude l’avventura BigRock e
il progetto dello spacer, oggi ci si sporca veramente
le mani con tutto quello che abbiamo fatto per due
settimane!
La lezione non è particolarmente ricca di novità,
quest’ultimo giorno è stato impegnato più che altro
per finalizzare tutto quello che abbiamo creato
durante le giornate di lezione, le novità introdotte
sono state gli effetti sulla camera come il “vignetting”
sfruttatissimo su instagram, è il classico alone sui
bordi dell’immagine, il blur, il gloss e tanti altri, altra
introduzione in scena sono stati i lens flare di unity,
i classici bagliorini contro luce che si creano
in camera ed una veloce carrellata sull’animator di
Unity.
Si finalizza tutto, e tutti riusciamo a chiudere
i progetti entro le 18:00, il resto del tempo lo passiamo
a visualizzare i lavori prodotti da tutti gli studenti
del corso ed infine alla consegna degli attestati di
partecipazione al summer camp.
Non sono mancate foto e video interviste, agli studenti,
con saluti e ringraziamenti per la buona riuscita
del corso. la giornata è finita alla grande e con essa
questa bellissima esperienza, grazie BigRock
e grazie Indie Vault!!!
Scarica

scaricarne la versione PDF