08.09.2019 Views

Progettazione e Sviluppo di un Multiplayer Online Game su Reti Peer-to-Peer

Alma Mater Studiorum Universit`a degli Studi di Bologna Facolta` di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Scienze di Internet Tesi di Laurea in Laboratorio di Programmazione Internet

Alma Mater Studiorum Universit`a degli Studi di Bologna
Facolta` di Scienze Matematiche, Fisiche e Naturali
Corso di Laurea in Scienze di Internet
Tesi di Laurea in Laboratorio di Programmazione Internet

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

14 CAPITOLO 1. STATO DELL’ARTE<br />

1.4 Tecnologie<br />

Dal p<strong>un</strong><strong>to</strong> <strong>di</strong> vista dello sviluppo, il videogioco è <strong>un</strong> software complesso,<br />

e come tale si presta ad essere <strong>di</strong>viso in moduli separati, ogn<strong>un</strong>o de<strong>di</strong>ca<strong>to</strong> ad<br />

<strong>un</strong>a precisa f<strong>un</strong>zione.<br />

Escludendo il modulo che implementa le logiche <strong>di</strong> gioco, che è fisiologicamente<br />

<strong>di</strong>pendente dalle specifiche <strong>di</strong> gameplay, si possono in<strong>di</strong>viduare moduli,<br />

tipicamente generalizzabili, come il Renderer (o Engine 3D), utilizza<strong>to</strong> per<br />

<strong>di</strong>segnare <strong>su</strong> schermo gli oggetti tri<strong>di</strong>mensionali, l’Engine fisico, utilizza<strong>to</strong><br />

invece per simulare il movimen<strong>to</strong>, le collisioni e le relative risposte o l’Engine<br />

<strong>di</strong> rete (Networking Engine o “NetCode”), de<strong>di</strong>ca<strong>to</strong> alla connessione e alla<br />

sincronizzazione dello sta<strong>to</strong> <strong>di</strong> gioco.<br />

Dal momen<strong>to</strong> che le f<strong>un</strong>zioni <strong>su</strong>pportate da tali moduli sono piut<strong>to</strong>s<strong>to</strong> generiche<br />

e “gamelogic independent”, <strong>di</strong>versi Team e Software House rilasciano<br />

pubblicamente le versioni dei propri Engines, opport<strong>un</strong>amente aggiornati secondo<br />

gli ultimi standard qualitativi. In ques<strong>to</strong> modo è possibile sviluppare<br />

videogiochi astraendo da <strong>un</strong>a vasta gamma <strong>di</strong> aspetti inerenti al game development,<br />

evitando quin<strong>di</strong> <strong>di</strong> dover reimplementare complesse componenti<br />

software già esistenti, e risolverne le problematiche annesse.<br />

Per quan<strong>to</strong> riguarda gli Engines 3D, spesso questi sono accompagnati da<br />

mo<strong>to</strong>ri <strong>di</strong> gioco e Tools <strong>di</strong> <strong>su</strong>ppor<strong>to</strong>: attualmente a livello <strong>di</strong> software Open<br />

Source, gli Engines grafici più utilizzati sono Ogre3D 6 che si presenta come<br />

Renderer multipiattaforma basa<strong>to</strong> <strong>su</strong> <strong>un</strong>o scenegraph a no<strong>di</strong>, e Irrlicht 7 ,<br />

simile al primo quan<strong>to</strong> a features <strong>di</strong> base ma pre<strong>di</strong>spos<strong>to</strong> al <strong>su</strong>ppor<strong>to</strong> <strong>di</strong> caratteristiche<br />

tipiche <strong>di</strong> <strong>un</strong> <strong>Game</strong> Engine quali la gestione input, dell’au<strong>di</strong>o e<br />

della fisica.<br />

6 Object-Oriented Graphics Rendering Engine, http://www.ogre3d.org<br />

7 http://irrlicht.sourceforge.net

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!