Dragonblade un gioco con Blender

58
UNIVERSIT ` A DEGLI STUDI DI CATANIA facolt` a di scienze matematiche, fisiche e naturali corso di laurea in informatica TESI Dragonblade un gioco realizzato con Blender Candidato: Filippo Daniele Legname Relatore: Chiar.mo Prof. Giovanni Gallo anno accademico 2008/2009

description

Tesi interamente sviluppata con il programma di computer grafica gratuito Blender. Le idee i bozzetti i modelli 3d sono interamente sviluppati dal Tesista Legname Filippo Daniele. Il gioco è da considerarsi in WIP ( work in progress )

Transcript of Dragonblade un gioco con Blender

Page 1: Dragonblade un gioco con Blender

UNIVERSITA DEGLI STUDI DI CATANIA

facolta di scienze matematiche, fisiche e naturali

corso di laurea in informatica

TESI

Dragonbladeun gioco realizzato con Blender

Candidato:

Filippo Daniele Legname

Relatore:

Chiar.mo Prof. Giovanni Gallo

anno accademico 2008/2009

Page 2: Dragonblade un gioco con Blender

UNIVERSITA DEGLI STUDI DI CATANIA

facolta di scienze matematiche, fisiche e naturali

corso di laurea in informatica

TESI

Dragonbladeun gioco realizzato con Blender

Filippo Daniele LegnameRelatore:

Chiar.mo Prof. Giovanni Gallo

anno accademico 2008/2009

Page 3: Dragonblade un gioco con Blender

alla mia famiglia che mi ha sempre sostenuto

Page 4: Dragonblade un gioco con Blender

Indice

Elenco delle figure iv

Introduzione 1

1 Videogames 2

1.1 Cosa e un videogame? . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Storia dei videogiochi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Game Engine 4

2.1 Cosa e un Game Engine? . . . . . . . . . . . . . . . . . . . . . . . . . . 4

3 Storia dei Game Engine 7

4 Blender 9

4.1 Cosa e Blender? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

4.2 Dalla NeoGeo fino all’Open Source . . . . . . . . . . . . . . . . . . . . 10

4.3 Breve storia sul Blender Game Engine . . . . . . . . . . . . . . . . . . 12

4.4 Blender ora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4.5 Le tappe Principali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5 Progettazione del gioco 16

5.1 Idea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

5.2 Logica del gioco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

5.3 Scenari/Livelli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

5.3.1 Realizzazione cripte . . . . . . . . . . . . . . . . . . . . . . . . . 19

5.3.2 Realizzazione terreno vulcanico . . . . . . . . . . . . . . . . . . 20

5.4 Protagonista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

5.4.1 Realizzazione volto protagonista . . . . . . . . . . . . . . . . . . 22

5.4.2 Realizzazione corpo protagonista . . . . . . . . . . . . . . . . . 23

5.4.3 Animazioni protagonista . . . . . . . . . . . . . . . . . . . . . . 27

5.4.4 Oggetto Armature . . . . . . . . . . . . . . . . . . . . . . . . . 29

i

Page 5: Dragonblade un gioco con Blender

INDICE ii

5.4.5 Logica oggetto Armature . . . . . . . . . . . . . . . . . . . . . 30

5.4.6 Logica oggetto VitalSpacePg . . . . . . . . . . . . . . . . . . . 32

5.5 Ideazione Spada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.5.1 Realizzazione Spada . . . . . . . . . . . . . . . . . . . . . . . . 36

5.6 Telecamera e indicatori . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5.7 Menu Principale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.7.1 Logica Menu Principale . . . . . . . . . . . . . . . . . . . . . . 40

5.8 Oggetti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.8.1 Dragonstones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.8.2 Logica Dragonstone . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.8.3 Porte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.8.4 Logica porte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.8.5 Alberi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.8.6 Colonne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.9 Mostri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

6 Screenshot 46

7 Stato dell’arte 50

7.1 Fasi complete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

7.2 da completare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Ringraziamenti 51

Page 6: Dragonblade un gioco con Blender

Elenco delle figure

1.1 La prima consolle: il Magnavox Odyssey . . . . . . . . . . . . . . . . . 3

1.2 Uno dei primi giochi Pong . . . . . . . . . . . . . . . . . . . . . . . . . 3

3.1 Logo del gioco Doom . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3.2 Logo del gioco Quake . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

4.1 Logo Blender . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

4.2 Logo Bullets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.3 Il primo gioco completamente realizzato su Blender . . . . . . . . . . . 12

5.1 Cripte dopo la realizzazione . . . . . . . . . . . . . . . . . . . . . . . . 19

5.2 Creazione volto fase 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

5.3 Creazione volto fase 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

5.4 Creazione volto fase 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

5.5 Personaggio completo . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

5.6 Personaggio completo e dettagli . . . . . . . . . . . . . . . . . . . . . . 25

5.7 Personaggio principale lowpoly . . . . . . . . . . . . . . . . . . . . . . 26

5.8 Personaggio principale lowpoly completo . . . . . . . . . . . . . . . . . 26

5.9 Bozza Personaggio principale . . . . . . . . . . . . . . . . . . . . . . . 27

5.10 Bozza Personaggio principale . . . . . . . . . . . . . . . . . . . . . . . 29

5.11 Weight Paint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

5.12 Logica Armature1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

5.13 Logica Armature2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

5.14 Logica Armature3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

5.15 Logica VitalSpacePg 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.16 Logica VitalSpacePg 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.17 Logica VitalSpacePg 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.18 Bozza finale spada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.19 Camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.20 Indicatore Energia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

iii

Page 7: Dragonblade un gioco con Blender

ELENCO DELLE FIGURE iv

5.21 Indicatore pietre DragonStone . . . . . . . . . . . . . . . . . . . . . . . 38

5.22 Menu principale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.23 Logica Menu Pricipale rotazione spada . . . . . . . . . . . . . . . . . . 40

5.24 Logica del pulsante Start . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.25 Logica del pulsante Quit . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.26 Dragonstone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.27 Indicatore Energia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.28 Porta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.29 Logica della porta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.30 Albero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.31 Alcune colonne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Page 8: Dragonblade un gioco con Blender

Introduzione

Con questo progetto ho realizzato un gioco con l’aiuto del programma Blender, un

software di grafica tridimensionale gratuito, con licenza GPL (General Public License).

L’obiettivo principale e stato quello di comprendere come realizzare attraverso l’uso

del BGE (Blender Game Engine) un action game (gioco di azione).

Attraverso la lettura dei vari capitoli percorreremo brevemente la storia dei video-

giochi fino alla nascita dei complessi strumenti di sviluppo nella moderna industria

videoludica. Vedremo poi le fasi di creazione di un videogioco dall’ideazione, alla

creazione dei bozzetti, alla modellazione e alle logiche di gioco.

1

Page 9: Dragonblade un gioco con Blender

Capitolo 1

Videogames

1.1 Cosa e un videogame?

Un videogame e un gioco dove le regole sono gestite automaticamente da un calco-

latore elettronico che utilizza un’interfaccia uomo-macchina basata sul display come

sistema di output, e come input, una tastiera oppure un Joystick.

1.2 Storia dei videogiochi

Il primo videogioco risale al lontano 1952, inventato all’universita di Cambridge,

dal signor A.S. Douglas, come tesi per il dottorato, si chiamava OXO ed era la tra-

sposizione del gioco del Tris su computer. In realta questo non viene propriamente

considerato un videogioco, perche questo progetto era fatto semplicemente per com-

pletare la tesi di laurea e non creato per intrattenere. Il primo pero ad avere l’idea di

sviluppare un vero e proprio videogame fu Ralph Baer. Il concetto di un giocatore,

un gioco, un televisore, ed una scatola ad essa collegata in cui inserire i videogiochi e

suo. La societa per cui lavorava come ingegnere la Sanders and Associates gli permise

di sviluppare il primo prototipo di consolle, il Magnavox Odyssey.

2

Page 10: Dragonblade un gioco con Blender

1.2 Storia dei videogiochi 3

Figura 1.1: La consolle Magnavox Odyssey

Questo prototipo permetteva di giocare a Odyssey, una simulazione del gioco del

ping-pong: nello schermo compaiono soltanto una pallina e due barrette luminescenti

controllate o da un giocatore ed il computer, oppure da due giocatori in contempora-

nea. Lo scopo e cercare di oltrepassare la barretta avversaria con la pallina.

Figura 1.2: Uno dei primi giochi Pong

Nel 1972 Nolan Bushel, che lavorava per una societa di circuiti integrati e nastri ma-

gnetici decise di lasciare il suo impiego e fondare l’Atari. Bushell con la nuova societa

si prefiggeva l’obiettivo di sostituire completamente i flipper dei bar con videogiochi

a gettoni. Nei primi mesi di produzione l’Atari vendette circa 2000 unita con il gioco

Pong una versione modificata del gioco Odyssey. Al contrario della consolle di Baer,

i videogiochi a gettoni erano destinati ai luoghi pubblici e quindi grazie a questo la

diffusione e la conoscenza dei videogiochi divenne capillare.

Page 11: Dragonblade un gioco con Blender

Capitolo 2

Game Engine

I primi videogiochi erano realizzati da singoli programmatori che si occupavano

dello sviluppo di tutti gli elementi necessari. Col passare del tempo, grazie all’au-

mento della potenza dell’hardware a disposizione, i videogiochi sono diventati sem-

pre piu complessi, rendendo indispensabile la suddivisione dei compiti: si hanno cosı

programmatori che si occupano del codice, artisti per la parte audiovisiva, e i designer.

L’industria dei videogiochi e una realta altamente competitiva per questo motivo

spesso si utilizzano i Game Engine.

2.1 Cosa e un Game Engine?

Un Game Engine o GE e un software costruito per la creazione e lo sviluppo di

videogiochi. Esistono molti tipi di Game Engine che sono fatti per lavorare su console

e sistemi operativi desktop come per esempio Microsoft Windows, Linux e Mac OS

X. Le funzioni che un GE deve sviluppare sono un motore di rendering (renderer) per

la grafica 2D o 3D, un motore fisico o un rilevatore di collisioni (o collision response),

suoni, scripting, animazione, intelligenza artificiale, networking, streaming, gestione

della memoria, threading, e disegno delle scene. Il processo di creazione di un gioco

e frequentemente semplificato perche con lo stesso motore di gioco si posso realizzare

giochi completamente differenti.

Un Game Engine possiede una serie di strumenti di sviluppo visuali in aggiunta a

componenti software che possono essere opportunamente riusati. Questi tool sono in

genere forniti in un ambiente di sviluppo integrato (IDE) per semplificare e indirizzare

verso la metodologia di sviluppo di software chiamato RAD (Rapid Application De-

velopment) che permette di sviluppare il gioco insieme al Planning, o fase di ideazione

del gioco.

4

Page 12: Dragonblade un gioco con Blender

2.1 Cosa e un Game Engine? 5

Questi Game Engine sono qualche volta chiamati Middleware1, perche sono l’indi-

spensabile di cui si ha bisogno per sviluppare un gioco riducendo i costi, la complessita

e tempi per avere un prodotto finito e pronto per gli scaffali.

Cosi come le altre soluzioni Middleware, i Game Engine hanno una buona com-

patibilita con tutte le piattaforme, permettendo cosi al gioco di essere funzionante

su consolle e Personal Computer applicando, in qualche caso, cambiamenti minimi al

sorgente. Spesso, il game Middleware e disegnato con una componente di base dell’ar-

chitettura, o CBSE, tale da permettere che alcune parti vengano sostituite o estese

con altre componenti come HAVOK per la fisica, FMOD per il suono o Scalefrom per

UI e Video. Qualche GE come RenderWare sono costruiti come una serie di compo-

nenti Middleware debolmente connessi in modo da dare la possibilita di combinare le

varie componenti per creare un motore di gioco completamente personalizzabile, in-

vece del piu comune approccio di estendere e personalizzare una soluzione integrata.

Comunque e importante, oltre alla possibilita di estendere il GE, quella di poterlo

usare in molti modi. Nonostante la specificita del nome, il GE viene usato anche per

altri tipi di applicazioni interattive come grafici in real-time, cosi come demo pubblici-

tarie, visualizzazioni di architetture, simulazioni per l’addestramento, e modellazioni

di ambienti.

Qualche GE possiede semplicemente il 3D Render invece che dell’intera funziona-

lita che serve per i giochi. Questi GE lasciano il resto del lavoro allo sviluppatore che

puo egli stesso aggiungere le altre componenti sviluppandole oppure piu semplicemen-

te assemblare il tutto con altre componenti gia pronte. Questi pezzi spesso vengono

chiamati come motore Grafico, motore di rendering o motore 3D, invece del piu gene-

rale e impreciso GE. Qualche esempio di GE sono RealmForge, TrueVision3d, OGRE,

Crystal Space, Genesis3D, Irrlicht e Jmonkey Engine.

Molto spesso, i motori 3D o sistemi di rendering sono costruiti sopra librerie grafi-

che come Direct3D o OpenGL che crea un’astrazione della GPU o della scheda Video.

Le librerie di Basso livello come per esempio DirectX, SDL, e OpenAL sono anche

comunemente usate per l’accesso alle periferiche di sistema come tastiera, mouse e joy-

stick, periferiche di rete e schede sonore. Prima dell’accelerazione grafica Hardware

erano usati i render grafici software. Questi ultimi tipi di rendering sono tutt’ora usati

in qualche tool di modellazione o per renderizzare immagini ad alto dettaglio dove il

framerate, la velocita di elaborazione delle immagini misurata in frame per secondo,

1Con il termine inglese middleware si intende un insieme di programmi informatici che fungono

da intermediari tra diverse applicazioni e componenti software. Sono spesso utilizzati come supporto

per sistemi distribuiti complessi. I software utilizzati possono anche essere piu di uno.

Page 13: Dragonblade un gioco con Blender

2.1 Cosa e un Game Engine? 6

non e importante o quando l’hardware del computer non ha i requisiti necessari alla

creazione delle ombreggiature.

Page 14: Dragonblade un gioco con Blender

Capitolo 3

Storia dei Game Engine

Il termine Game Engine, o brevemente GE, nacque nel 1990, in speciale connessio-

ne con eventi 3D come per esempio la nascita dei primi sparatutto in prima persona

o FPS quali DOOM e Quake.

Figura 3.1: Doom Figura 3.2: Quake

La popolarita di questi giochi era tale che altri sviluppatori invece di implementare

un gioco da zero prendevano in licenza le componenti principali del codice e si limi-

tavano a creare il game content o game assets: ambientazione, armi e livelli. Alcuni

giochi successivi, come Quake III Arena e Unreal di Epic Games usano questo approc-

cio. Il riutilizzo di GE permette di creare seguiti di giochi in modo molto piu facile e

veloce e questo e particolarmente importante nella moderna industria videoludica.

Prima dei Game Engine, i giochi erano tipicamente scritti come singole entita: un

gioco per Atari, per esempio doveva essere costruito partendo dalla base cioe dove-

va essere implementato il software per la gestione ottimale dell’hardware del display

e successivamente tutto il resto. Questa parte del codice oggi sarebbe chiamato il

7

Page 15: Dragonblade un gioco con Blender

8

kernel del gioco. Un tipo di approccio di questo tipo anche quando non si dovevano

sviluppare parti del software complessi e di basso livello, rendeva difficile il riutiliz-

zo del codice anche a causa della esosa richiesta di memoria che rendeva impossibile

l’approccio ingegneristico Game Engine.

Il continuo avanzamento della tecnologia dei motori grafici ha permesso una netta

separazione tra rendering, scripting, artwork e level design. Al giorno d’oggi e comune

negli sviluppatori un rapporto di 4 a 1 tra artisti e programmatori.

Gli sparatutto in prima persona sono ancora il principale motivo di riutilizzo dei

motori grafici di terze parti, ma il loro uso si sta diffondendo anche in altri generi.

Alcuni esempi sono il gioco di ruolo The Elder Scrolls III: Morrowind, i MMORPG

Dark Age of Camelot (basati su NetImmerse) e Lineage II (basato sull’Unreal Game

Engine).

Stesso discorso vale anche per i motori grafici come per esempio Renderware che

e stato usato in Rayman 2 Revolution, Gran Theft Auto III e Borout 2 e 3.

I motori moderni rientrano tra i software piu complessi in assoluto e possiedono

frequentemente decine di sistemi accuratamente sincronizzati per garantire un buon

controllo dell’esperienza offerta all’utente finale.

Page 16: Dragonblade un gioco con Blender

Capitolo 4

Blender

4.1 Cosa e Blender?

Figura 4.1: Logo Blender

Blender e un programma libero di modellazione, rigging, animazione, compositing

e rendering di immagini tridimensionali. Dispone inoltre di funzionalita per map-

pature UV, simulazioni di fluidi, di rivestimenti, di particelle, altre simulazioni non

lineari e creazione di applicazioni/giochi 3D. E disponibile per vari sistemi operativi:

Microsoft Windows, Mac OS X, Linux, IRIX, Solaris, NetBSD, FreeBSD, OpenBSD

assieme a porting non ufficiali per BeOS, SkyOS, AmigaOS, MorphOS e Pocket PC.

Blender e dotato di un robusto insieme di funzionalita paragonabili, per caratteristi-

che e complessita, ad altri noti programmi per la modellazione 3D come Softimage

XSI, Cinema 4D, 3D Studio Max, Lightwave e Maya. Tra le funzionalita di Blender

sono incluse l’utilizzo di raytracing e di script (in Python).

9

Page 17: Dragonblade un gioco con Blender

4.2 Dalla NeoGeo fino all’Open Source 10

4.2 Dalla NeoGeo fino all’Open Source

Nel 1988 Ton Roosendaal ha co-fondato lo studio di animazione olandese NeoGeo.

NeoGeo e diventata rapidamente il piu grande studio di animazione 3D dell’Olanda

ed una delle principali case di animazione in Europa. NeoGeo ha creato delle produ-

zioni vincitrici di premi (European Corporate Video Awards 1993 e 1995) per grandi

aziende come clienti come la Philips, multinazionale dell’elettronica. All’interno di

NeoGeo, Ton e stato responsabile sia della direzione artistica sia dello sviluppo inter-

no del software. Dopo un’attenta riflessione, Ton decise che l’insieme dei strumenti 3D

propri della NeoGeo era troppo vecchio ed ingombrante da mantenere ed aggiornare

e bisognava riscriverle daccapo. Nel 1995 e iniziata questa riscrittura ed fu destinata

a diventare la piattaforma di creazione di software 3D che noi tutti conosciamo co-

me Blender. Dato che NeoGeo ha continuato a rifinire e migliorare Blender, divento

chiaro a Ton che Blender potesse essere usato come strumento per altri artisti, al di

fuori della NeoGeo.

Nel 1998, Ton decise di fondare una nuova azienda chiamata Not a Number (NaN)

come spin-off della NeoGeo per altri mercati e per lo sviluppo di Blender. Nel cuore

della NaN c’era il desiderio di creare e distribuire gratuitamente una piattaforma di

creazione 3D compatta e multi-piattaforma. Inizialmente fu un concetto rivoluziona-

rio dato che la maggior parte dei modellatori costavano migliaia di dollari americani.

La NaN ha sperato di portare ad un livello professionale gli strumenti di modellazione

3D e di animazione prima di raggiungere il grande pubblico. Il modello aziendale della

NaN era legato alla fornitura di prodotti commerciali e servizi intorno a Blender. Nel

1999 la NaN ha partecipato alla sua prima conferenza Siggraph nello sforzo di un’ul-

teriore promozione di Blender. La prima convention del Siggraph 1999 di Blender e

stata un grande successo ed ha suscitato un enorme interesse sia della stampa che dei

partecipanti. Blender e stato un successo ed e stato confermato il suo potenziale!

Sulla scia del successo del Siggraph all’inizio del 2000, la NaN aveva un finanziamento

privilegiato di 4.5 milioni di Euro da dai capitalisti d’impresa. Questo grande afflusso

di cassa ha consentito alla NaN di espandersi rapidamente nelle sue operazioni. Ben

presto la NaN ha raggiunto i 50 dipendenti sparsi nel mondo per migliorare e pro-

muovere Blender. Nell’estate del 2000, fu rilasciato Blender v2.0. In tale versione di

Blender fu aggiunto il motore per i giochi alla piattaforma 3D. Per la fine del 2000, il

numero di utenti registrati sul sito web della NaN superava i 250.000.

Sfortunatamente, le ambizioni della NaN e le opportunita non incontrarono le capa-

cita dell’azienda e la realta del mercato del momento. Questa ristrutturazione porto

ad un riavvio della NaN con nuovi finanziatori ed un’azienda piu piccola nell’aprile

2001. Sei mesi dopo, fu lanciato il primo prodotto software commerciale della NaN,

Page 18: Dragonblade un gioco con Blender

4.2 Dalla NeoGeo fino all’Open Source 11

Blender Publisher. Questo prodotto era destinato al mercato emergente dei media

3D interattivi basati su web. A causa delle vendite deludenti e del clima di difficolta

economiche in corso, i nuovi investitori decisero di fermare tutte le operazioni della

NaN. La chiusura includeva anche la cessazione dello sviluppo di Blender. Sebbene

la versione di allora di Blender fosse chiaramente difettosa, con una complessa ar-

chitettura software interna, le caratteristiche incomplete ed un modo non-standard

della GUI, si ebbe un entusiastico supporto della comunita di utenti e di clienti che

hanno acquistato Blender Publisher nel passato, Ton non poteva lasciare che Blender

sparisse nell’oblio. Dal riavvio della societa con un team abbastanza ampio di svilup-

patori non fu possibile, nel Marzo 2002 Ton Roosendaal ha fondato l’organizzazione

non-profit Blender Foundation. Il primo obiettivo della Blender Foundation e stato

di trovare un modo per continuare lo sviluppo e la promozione di Blender come un

progetto fondato sulla comunita Open Source. Nel luglio del 2002, Ton e riuscito

ad ottenere dagli investitori della NaN il passaggio unico alla fondazione Blender per

tentare di rilasciare Blender come Open Source. La campagna Free Blender ha cer-

cato di raggiungere 100.000 Euro affinche tale Fondazione potesse acquistare i diritti

dei codici sorgenti di Blender e la proprieta dei diritti intellettuali dagli investitori

della NaN e di conseguenza il rilascio di Blender alla comunita open source. Con

un gruppo di entusiastici volontari, tra cui diversi ex impiegati della NaN, inizio la

campagna per raccogliere fondi per Liberare Blender. Con piacevole sorpresa di tutti

la campagna raccolse 100.000 Euro in sole sette settimane. La domenica del 13 otto-

bre 2002, Blender e stato rilasciato al mondo nei termini della GNU General Public

License (GPL). Lo sviluppo di Blender continua in questi giorni condotto da un vasto

gruppo di volontari da tutto il mondo guidati dal creatore originale di Blender, Ton

Roosendaal.

Page 19: Dragonblade un gioco con Blender

4.3 Breve storia sul Blender Game Engine 12

4.3 Breve storia sul Blender Game Engine

La prima versione di Game Engine e stata rilasciata nel 2000 con la versione 2.0

di Blender dall’azienda NEOGEO. Il maggiore upgrade del BGE e stato fatto nella

versione 2.10 di Blender nel lontano 2001, dove il motore, il Bullet physics engine, e

stato completamente riscritto da Erwin Coumans (principale architettura) e Gino van

den Bergen (Collisione e fisica).

Figura 4.2: Logo Bullets Physics Library

Giovedı 11 Dicembre 2008 e stato rilasciato il primo gioco completamente realizzato

con Blender, dal nome Yo frankie!

Figura 4.3: Il primo gioco completamente realizzato su Blender

Page 20: Dragonblade un gioco con Blender

4.4 Blender ora 13

4.4 Blender ora

L’ultima release, la 2.48 e stata aggiornata per far conoscere i cambiamente ef-

fettuati sul Blender Game Engine fatti durante lo sviluppo del gioco Yo Frankie che

includono ombre in tempo reale, materiali in tempo reale con le librerie GLSL, e

aggiornamenti alla fisica. Nella versione 2.48 sono state apportamente migliorie al

sistema di animazione, alla simulazione del vento, e tolti numerosi bug. Attualmente

e stata rilasciata la versione 2.49a che ha apportato altre migliorie e l’aggiunta della

video Texture.

In questo momento si prosegue nello sviluppo di Blender version 2.5, che include

un’interfaccia completamente ridisegnata e aggiornamenti al sistema di key mapping

per la animazioni.

4.5 Le tappe Principali

• 1.00 Gennaio 1995 Blender sviluppato nello studio di animazione NeoGeo;

• 1.23 Gennaio 1998 SGI Versione pubblicata su web, IrisGL;

• 1.30 Aprile 1998 Versioni per Linux e FreeBSD, porting per OpenGL ed X;

• 1.3x Giugno 1998 Fondazione della NaN;

• 1.4x Settembre 1998 Rilasciate le versioni per Sun e Linux Alpha;

• 1.50 Novembre 1998 Pubblicato il primo Manuale;

• 1.60 Aprile 1999 C-key (nuove caratteristiche bloccate, $95), rilasciata versione

per Windows;

• 1.6x Giugno 1999 Rilasciate versioni per BeOS e PPC;

• 1.80 Giugno 2000 Fine della C-key, Blender di nuovo completamente libero;

• 2.00 Agosto 2000 Motore interattivo 3D e in tempo reale;

• 2.10 Dicembre 2000 Nuovo motore, simulazione leggi fisiche e Python;

• 2.20 Agosto 2001 Sistema di animazione dei Personaggi;

• 2.21 Ottobre 2001 Lancio di Blender Publisher;

• 2.2x Dicembre 2001 Versione per Mac OS X;

Page 21: Dragonblade un gioco con Blender

4.5 Le tappe Principali 14

• 13 Ottobre 2002 Blender diventa Open Source, Prima Blender Conference;

• 2.25 Ottobre 2002 Blender Publisher diventa liberamente disponibile;

• Tuhopuu1 Ottobre 2002 Viene creata la ramificazione sperimentale di Blender,

un’arena di programmatori;

• 2.26 Febbraio 2003 Il primo vero Blender Open Source;

• 2.27 Maggio 2003 Il secondo Blender Open Source;

• 2.28x Luglio 2003 La prima della serie 2.28x;

• 2.30 Ottobre 2003 Alla seconda Blender Conference viene presentato il rifaci-

mento della UI della 2.3x;

• 2.31 Dicembre 2003 Aggiornamento al progetto stabile 2.3x UI;

• 2.32 Gennaio 2004 Importanti revisioni delle funzionalita interne del rendering;

• 2.33 Aprile 2004 Ambient Occlusion, Nuove Textures Procedurali, torna il game

engine;

• 2.34 Agosto 2004 Grandi miglioramenti: Interazione delle Particelle, LSCM UV

mapping, integrazione funzionale con YafRay, increspature pesate [Weighted

creases] nelle Subsurfaces, Ramp shaders, OSA completo, e molto altro ancora.;

• 2.35 Novembre 2004 Un’altra versione piena di migliorie: Oggetti Ganci [hooks],

curve deformanti [deforms] e curve modellanti [tapers], duplicatori di particelle

e molto altro;

• 2.36 Febbraio 2005 Piu che una versione di stabilizzazione, molto lavoro die-

tro le quinte, alcune nuove funzionalita, soprattutto mappatura Normale e di

Spostamento [Displacement].

• 2.37 Giugno 2005 Un grande salto: strumenti di trasformazione e widgets,

Corpi molli [Softbodies], Campi di forza, deflessioni, Suddivisione di Superfici

incrementale, Ombre Trasparenti, ed il Multithreaded rendering;

• 2.40 Dicembre 2005 Un salto ancora piu grande: completo rinnovamento del

sistema di armatura, shape keys, peli particellari, simulazioni di fluidi e corpi

rigidi;

• 2.41 Gennaio 2006 Principalmente aggiunte al Motore di Gioco e un sacco di

aggiustamenti;

Page 22: Dragonblade un gioco con Blender

4.5 Le tappe Principali 15

• 2.42 Luglio 2006 La versione Node. Oltre 50 sviluppatori hanno contribuito

a Nodes, modificatori Array, offuscamento dei vettori, un nuovo motore fisico,

rendering, lipsync e a molte altre funzionalita;

• 2.43 Febbraio 2007 La Multi release: Multi funzioni: Meshes a multi risoluzione,

UV Texture multi livello, immagini multi strato e rendering e baking a multi

passaggio, Scultura, Retopology, Matte multiple addizionali, Distort e Filter

Nodes, miglioramenti nel modellamento e nell’animazione, migliore pittura con

spazzole multiple, particelle fluide, oggetti proxy, Riscrittura Sequenziale, e UV

texturing post produzione. Ha ancora il multi-threaded rendering per CPU

multi-core. Con Verse e ancora multi-user, permettendo a piu artisti di lavorare

collaborativamente sulla stessa scena. Infine, le render farms forniscono ancora

la distribuzione multi-workstation del rendering. C’e anche una riscrittura del

sito;

• 2.44 Maggio 2007 La release SSS: la grande notizia, in aggiunta a due nuovi

modificatori, al risveglio del supporto degli OS a 64-bit e alla correzione di

numerosi bug, e l’aggiunta del nuovo materiale Subsurface Scattering, il quale

simula la dispersione della luce al di sotto della superficie di oggetti organici e

morbidi;

• 2.45 Settembre 2007 Questa release non ha funzioni aggiuntive, ma si propo-

ne unicamente di correggere numerosi bug e di migliorare la performance del

programma;

• 2.46 riscritto Particle System, un sistema per la simulazione dei movimenti dei

vestiti e un paio di nuove caratteristiche per creare ed animare peli e capelli;

introdotto anche un metodo di rendering chiamato Glossy Reflection ed un in-

novativo Image Browser col quale e finalmente possibile sfogliaree le cartelle del

proprio sistema;

• 2.47 comprende una serie di bug fix e l’implementazione di alcuni tool creati

apposta dal team realizzatore di Bug Bucks Bunny

• 2.48 nasce il Grease Pencil (per scrivere direttamente sulle finestre di viewport),

GLSL material, possibilita di creare ambienti con cielo e sole, nuovi strumenti

di sculpt, migliorie al game engine, strumenti per i fluidi e deformatori, ed altri

miglioramenti nel reparto uv e python;

• 2.49 Video Texture, implementata la gestione delle texture con i Nodi, signifi-

canti miglioramenti alla velocita del Game Engine;

Page 23: Dragonblade un gioco con Blender

Capitolo 5

Progettazione del gioco

Nelle successive sezioni verranno illustrate in dettaglio le fasi di creazione del gioco

realizzato con Blender: DragonBlade

5.1 Idea

La prima cose da fare e quella di stabilire che tipo di gioco si vuole creare.

L’idea e stata quella di realizzare un action game (gioco di azione), simile a Devil

May Cry della Capcom, cioe un tipico gioco in terza persona ricco di combattimenti

frenetici, sia con armi che senza. Al giocatore e quindi richiesta la prontezza di riflessi

e l’agilita nel muovere i comandi del gioco, mentre il ragionamento puo anche avere

importanza marginale.

Un buon game design deve iniziare con la stesura delle idee redigendo un Back-

ground, cioe una storia del mondo in cui si svolge l’avventura specificando se l’am-

bientazione e futuristica, contemporanea ovvero fantasy.

Vista la mia passione per i giochi di ruolo, come Dungeon and Dragons, ho deciso

di ambientare il tutto in un mondo fantasy dove le armi a disposizione sono spade,

archi ed inoltre i personaggi hanno la possibilita di lanciare potenti incantesimi.

Pertanto ho scritto il seguente background che apparira al giocatore alla prima

schermata:

Corre l’anno 2734 del periodo di Arron, 1000 anni dopo le guerre di Calas.

Nel mondo delle terre conosciute di Errah, vi e un grande arcipelago di 30 grandi

isole, dove vive da millenni la casta guerriera degli Uriani.

La piu grande fra queste e l’isola di Ira, famosa poiche sulle sue terre risiede il piu

grande tempio costruito a memoria d’uomo: il tempio di Ladhamar. Esso custodisce

16

Page 24: Dragonblade un gioco con Blender

5.2 Logica del gioco 17

all’interno delle gigantesche e labirintiche cripte, un’arma magica: la DragonBlade.

Un arma capace di generare una fiamma incantata in grado di sciogliere qualunque

tipo di armatura. Adesso dopo secoli di pace, le forze del Dio della Sofferenza sono

tornate piu minacciose che mai, decise a spazzare via, per sempre, gli abitanti delle

terre di Errah. La minaccia, ha spinto il Gran Consiglio dei guerrieri delle caste piu

elevate, coloro a cui e concessa la “ricerca”, a nominare un “eletto” per entrare nelle

cripte del tempio e trovare la spada che sconfiggera le forze del male. La scelta e

caduta su Kheal, una guerriera tra le piu valenti, discendente diretta di Calas. Ad

essa e stato assegnato l’arduo compito di combattere contro i millenari custodi della

spada che abitano le cripte del tempio.

5.2 Logica del gioco

Una volta avviato il gioco, il player potra muovere il personaggio principale, rap-

presentato da Kheal, l’eroina del gioco, attraverso i tasti freccia, saltare con la barra

spazio, muovere l’arma per colpire i mostri premendo Ctrl.

Essa dovra affrontare i vari mostri sia nel primo scenario, dove dovra trovare ed

impossessarsi della spada magica, sia nel secondo dove dovra sconfiggere le forze del

male, rappresentate da altre tipologie di mostri. Inoltre il giocatore potra raccogliere

delle pietre, le Dragonstone, per attivare il potere della spada.

Il personaggio perde energia se viene colpito, il gioco finisce se la sua energia vitale

si riduce a zero o se uccide tutti i mostri del livello del vulcano.

Page 25: Dragonblade un gioco con Blender

5.3 Scenari/Livelli 18

5.3 Scenari/Livelli

Sono passato cosı alla creazione delle Bozze delle mappe su cui si svolgera l’avven-

tura: le labirintiche cripte (vds imm. 5.1a), con il particolare dell’ultima stanza dove

si trova la spada (vds imm. 5.1b) e l’isola vulcanica (vds imm. 5.1c)

(a) Bozza: le labirintiche cripte (b) Bozza: le labirintiche cripte, dettaglio

ritrovamento Spada

(c) Bozza: Secondo Scenario: il vulcano

Page 26: Dragonblade un gioco con Blender

5.3 Scenari/Livelli 19

5.3.1 Realizzazione cripte

In figura 5.1 il risultato della creazione delle cripte con l’aiuto dello strumento

Sculpt e l’applicazione di una texture.

Figura 5.1: Cripte dopo la realizzazione

Page 27: Dragonblade un gioco con Blender

5.3 Scenari/Livelli 20

5.3.2 Realizzazione terreno vulcanico

Per la creazione del terreno vulcanico ho usato il nuovo strumento Greace Pencil

e le Multitexture. Il primo permette di colorare in tempo reale i poligoni direttamente

sulla finestra del viewport, le seconde la presenza di piu texture assegnate alla stessa

mesh. Per questo motivo e possibile notare come il terreno visualizzi in alcune zone

l’erba, in altre terreno lavico, in altre ancora, lava incandescente.

(a) Impostazioni Greace Pencil

(b) immagine Stencil per terreno vulcanico

(c) immagine Stencil per la lava

Page 28: Dragonblade un gioco con Blender

5.4 Protagonista 21

5.4 Protagonista

L’idea iniziale, per il personaggio principale, era quella di realizzare un guerriero

con tanto di elmo, cotta e mazza da battaglia e per il quale avevo realizzato un bozzetto

(vds immagine 5.2a). L’alternativa a questo personaggio e stata quella di sviluppare

(a) (b)

un personaggio femminile prendendo spunto da una creazione di Michel Roger, Joan

of Arc (vds 5.2b). Ho deciso, pertanto, di ispirarmi a questo personaggio ritenendo

che sarebbe stato piu divertente animare una donna capace di maneggiare un’arma

molto pesante ed incrementando allo stesso tempo l’universo degli eroi femminili.

Page 29: Dragonblade un gioco con Blender

5.4 Protagonista 22

5.4.1 Realizzazione volto protagonista

Per la realizzazione ho deciso di partire dal volto del personaggio. Ho utilizzato

come tecnica di modellazione il rotoscoping (o ricalco) cioe l’uso di sfondi nelle finestre

di proienzione ortogonale destra e sinistra come guida nella creazione. Le immagini

5.2a e 5.2b mostrano alcune fasi della creazione del volto.

(a) (b)

(a) Creazione del volto prime fasi

(b) fase finale del volto

Page 30: Dragonblade un gioco con Blender

5.4 Protagonista 23

5.4.2 Realizzazione corpo protagonista

Il corpo e stato realizzato con lo stesso sistema di quello usato per il volto. Le

immagini successive mostrano alcune fasi della creazione del corpo.

(a) (b)

Figura 5.2: Creazione di una gamba

Page 31: Dragonblade un gioco con Blender

5.4 Protagonista 24

Figura 5.3: Aggiunta dettagli e prima parte della schiena

Figura 5.4: Busto e braccia

Page 32: Dragonblade un gioco con Blender

5.4 Protagonista 25

Figura 5.5: Personaggio completo

Figura 5.6: Personaggio completo con dettagli

Page 33: Dragonblade un gioco con Blender

5.4 Protagonista 26

Purtroppo questo modello non e stato inserito nel gioco, visto il numero troppo alto

di poligoni che causerebbero quindi una richiesta di calcolo eccessiva. Il modello ad

alta definizione e comunque stato usato come forma base su cui sviluppare il modello

a basso numero di poligoni. (vds 5.7 e 5.8).

Figura 5.7: Personaggio in Lowpoly

Figura 5.8: Personaggio in Lowpoly completo

Page 34: Dragonblade un gioco con Blender

5.4 Protagonista 27

5.4.3 Animazioni protagonista

In questo sottoparagrafo si mostreranno alcune immagini che riguardano la crea-

zione delle animazioni. Come sempre la prima fase e quella della bozza (vds 5.9).

Figura 5.9: Bozza azioni personaggio principale

Page 35: Dragonblade un gioco con Blender

5.4 Protagonista 28

Elenco azioni create :

• Idle (attesa)

• Walk (camminare)

• Jump (saltare)

• Run (correre)

• Slash1 (colpire partendo da sinistra)

• Slash2 (colpire partendo da a destra)

• Back Walk (Camminare all’indietro)

• Turn Right (gira a destra)

• Turn Left (gira a Sinistra)

• Die (muori)

• Flame (o posizione del sparare la fiamma)

Page 36: Dragonblade un gioco con Blender

5.4 Protagonista 29

5.4.4 Oggetto Armature

Per creare le azioni e stato necessario costruire e collegare l’oggetto Armature

(vds 5.10) alla Mesh della personaggio. Le Armature non sono altro che lo scheletro

che permette il movimento alla protagonista. Lo strumento Weight Paint , attivabile

Figura 5.10: Lo scheletro del personaggio o Armature

dall’apposito menu con l’armatura nella modalita Pose Mode, e lo strumento miglio-

re per associare ogni Bone (osso) dell’armatura, alla specifica zona del modello da

influenzare durante il movimento.

Figura 5.11: Armature e Mesh durante la fase Weight Paint

Page 37: Dragonblade un gioco con Blender

5.4 Protagonista 30

5.4.5 Logica oggetto Armature

Le animazioni del personaggio saranno eseguite durante il gioco grazie ad una

serie di comandi associati all’Armature alla pressione di specifici tasti. Tutto questo

e possibile grazie al pannello Logic. In figura 5.12 si puo notare che l’associazione con

i tasti Up (freccia verso l’alto) si richiama l’animazione Forward ; LeftShift e Up Shift

di sinistra e freccia verso l’alto, esegue l’animazione turn left e cosi via per tutti gli

altri tasti.

Figura 5.12: Logica tasti Up, LeftShift e Up, LeftArrow, RightArrow

Nella figura 5.13 si puo notare che l’animazione, Slash, per l’uso della spada, si

esegue con il tasto Ctrl di sinistra. La pressione di quest’ultimo per l’apposita variabile

Intera, Slash1, permette l’esecuzione delle azioni Slash1 e Slash2 in modo alternato e

l’avvio del suono Sword Swing01.wav (la lama che fende l’aria).

Page 38: Dragonblade un gioco con Blender

5.4 Protagonista 31

Figura 5.13: Logica tasti Space, Down Arrow e Left Ctrl

Figura 5.14: Logica associata ai messaggi di Die, Flame e hit

Page 39: Dragonblade un gioco con Blender

5.4 Protagonista 32

5.4.6 Logica oggetto VitalSpacePg

Le interazioni con gli oggetti circostanti e il movimento nell’ambiente sono possibili

grazie all’oggetto VitalSpacePg, che altro non e che un poligono al cui interno si trova

l’armatura e il modello del personaggio. Nelle successive figure (vds 5.15, 5.16 e

5.17) si mostra il pannello logic di VitalSpacePg : ad ogni tasto di azione e associato

l’attuatore Motion che fa spostare il poligono alla quale e imparentata l’armatura

della protagonista.

Figura 5.15

Page 40: Dragonblade un gioco con Blender

5.4 Protagonista 33

Figura 5.16

Figura 5.17

Page 41: Dragonblade un gioco con Blender

5.5 Ideazione Spada 34

5.5 Ideazione Spada

A questo punto sono passato alla realizzazione dell’arma principale della protago-

nista ritenendo che un personaggio leggendario, deve possedere una spada dai poteri e

dall’aspetto attrettanto leggendari. Al caso faceva un mio vecchio disegno (vds 5.18a).

Su questa base ho poi sviluppato l’elsa, realizzando una serie di disegni con teste di

drago. (vds 5.18b e 5.18c)

(a) Bozza spada (b) Bozza Testa di Drago 1

(c) Bozza Testa di Drago 2

Page 42: Dragonblade un gioco con Blender

5.5 Ideazione Spada 35

Arrivando cosi a concretizzare un bozzetto finale sul quale poter lavorare in fase

di modellazione (vds 5.18).

Figura 5.18

Page 43: Dragonblade un gioco con Blender

5.5 Ideazione Spada 36

5.5.1 Realizzazione Spada

La spada, che ho chiamato DragonBlade, e stato il mio primo esperimento di

applicazione di NormalMap, che permette grazie alle nuove librerie GLSL, di creare

dei particolari riflessi rossastri sull’elsa e sulla base della lama.

(a) Particolare dell’impugnatura

(b) Particolare della lama

Page 44: Dragonblade un gioco con Blender

5.6 Telecamera e indicatori 37

5.6 Telecamera e indicatori

La telecamera che e situata alla spalle del personaggio e il punto di vista del

giocatore. In figura 5.32a e 5.32b si puo notare come vi siano due etichette: punteggio

di Energia e numero di DragonStone raccolte.

(a) La telecamera e gli indicatori e una

Dragonstone ad essa imparentati

(b) La telecamera durante il gioco e i due indicatori

Page 45: Dragonblade un gioco con Blender

5.6 Telecamera e indicatori 38

Logica telecamera e indicatori

Figura 5.19: Logica Telecamera

Figura 5.20: Logica indicatore Energia

Figura 5.21: Logica contatore Dragonstone

Page 46: Dragonblade un gioco con Blender

5.7 Menu Principale 39

5.7 Menu Principale

Il menu principale e la prima schermata che apparira al giocatore quando avvia il

gioco.

Figura 5.22: Il menu principale

Page 47: Dragonblade un gioco con Blender

5.7 Menu Principale 40

5.7.1 Logica Menu Principale

La spada ruotera sempre su un suo asse, invece i pulsanti Start e Quit, al cui

passaggio del mouse si attivano delle animazioni (vds 5.24 e 5.25) permettono l’uno

di iniziare il gioco l’altro di uscire e chiudere il programma.

Figura 5.23: Logica per la rotazione della spada

Figura 5.24: Logica per il pulsante Start

Figura 5.25: Logica per il pulsante Quit

Page 48: Dragonblade un gioco con Blender

5.8 Oggetti 41

5.8 Oggetti

Nelle successive sottosezioni verranno mostrati in dettaglio gli oggetti fino ad ora

realizzati e le relative logiche di comportamento se presenti.

• Dragonstone;

• porte;

• alberi;

• colonne;

• lava incandescente;

Page 49: Dragonblade un gioco con Blender

5.8 Oggetti 42

5.8.1 Dragonstones

Le Dragonstones, o pietre di drago, sono delle sfere a cui sono state applicate una

Normal Map, per dare l’effetto rugoso e una texture.

Figura 5.26: Pietre di drago o Dragonstone

5.8.2 Logica Dragonstone

Figura 5.27: Logica Dragonstone

Page 50: Dragonblade un gioco con Blender

5.8 Oggetti 43

5.8.3 Porte

Figura 5.28: Porta con texture

5.8.4 Logica porte

Figura 5.29: Logica della porta

Page 51: Dragonblade un gioco con Blender

5.8 Oggetti 44

5.8.5 Alberi

Figura 5.30: Albero con Texture

5.8.6 Colonne

Figura 5.31: Colonne con applicata Texture

Page 52: Dragonblade un gioco con Blender

5.9 Mostri 45

5.9 Mostri

Successivamente ho realizzato i mostri: zombie e spettri che popoleranno le cripte.

Per gli zombie mi sono ispirato a un gioco visto la prima volta alla fine degli anni ’90:

Resident Evil, della Capcom. Per gli spettri al film degli anni ’60: Pomi d’ottone e

manici di scopa, della Disney.

(a) Zombie

(b) Spettro

Page 53: Dragonblade un gioco con Blender

Capitolo 6

Screenshot

46

Page 54: Dragonblade un gioco con Blender

47

Page 55: Dragonblade un gioco con Blender

48

Page 56: Dragonblade un gioco con Blender

49

Page 57: Dragonblade un gioco con Blender

Capitolo 7

Stato dell’arte

7.1 Fasi complete

• il menu con la rotazione della spada e i pulsanti per iniziare il gioco oppure

uscire;

• le cripte con l’applicazione delle varie texture;

• la modellazione del personaggio, le texture e le logiche di movimento;

• la spada con le texture;

• il terreno del livello dell’isola vulcanica con gli oggetti relativi: colonne, alberi,

mura, porte con relativa logica;

• la modellazione delle due tipologie di mostri: zombie e spettri e animazioni;

• le pietre di drago e logica;

7.2 da completare

• intelligenza artificiale mostri;

• collisione spada personaggio principale con i mostri;

• collisione spada mostri con personaggio principale;

• trappole;

• animazione lava;

• animazione incantesimo della spada;

50

Page 58: Dragonblade un gioco con Blender

Ringraziamenti

Ringrazio il prof. Giovanni Gallo per avermi concesso di sviluppare un videogioco

con Blender e per il prezioso aiuto nella stesura del documento di tesi, il professor

Neal Hirsig, della Tufts University degli Stati Uniti, che, con i suoi numerosi e prezios-

sissimi tutorial online, mi ha praticamente insegnato tutto cio di cui c’era bisogno per

conoscere la modellazione e la texturizzazione in Blender, Jonathan Williamson per

avermi insegnato la basi della modellazione dei volti, Caleb Souza, di Blender Total,

per avermi illuminato con i suoi tutorial nella creazione di alcune logiche di gioco e

tutta la comunita libera di Blender per avermi sostenuto e consigliato, direttamente

o indirettamente.

Un ringraziamento a mio padre che mi ha aiutato a correggere e stilare le bozze della

tesi.

Ringrazio i miei amici Dario Coco, Elena, Salvo, Sebastiano, Dario Veneziano, Vivia-

na, Sergio, Sandro, gli amici del gruppo di Greenpeace G.L. di Catania, il gruppo di

ballo caraibico e tutti coloro che mi hanno aiutato in questi anni.

Un caloroso grazie a tutti i miei familiari e ai miei parenti per avermi supportato

moralmente. Un ringraziamento particolare a mia madre, a mio padre e alle mie due

sorelle senza di loro non avrei potuto raggiungere questo traguardo.