Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoSofia Biagi Modificato 6 anni fa
1
Snake 2D Esame: Elementi Grafica Digitale Anno accademico: 2005/06
Studente: Gianluca Racano Docente: Matjaž Hmeljak
2
Il gioco… Snake é un gioco a livelli,in questo caso 7,di difficoltà
crescente. Scopo del gioco é far crescere il serpente,di lunghezza iniziale 5,mangiando le mele che in modo casuale vengono create e visualizzate sul campo di gioco. Nel mangiare le mele il serpente muovendosi non può toccare se stesso, i bordi del campo di gioco e gli eventuali ostacoli,dei muri,presenti sul suo cammino.
3
Struttura del Programma… (Caratteristiche principali)
Il gioco è realizzato su 7 livelli… Sul codice.. Buildlevels() -> costruisce i singoli livelli glNewList(..)-glEndList(..) ->liste di visualizzazione a)accetta 2 parametri:”Gluint list”,”GLenum mode”(modo compilazione) b)Uso tante liste di visualizz. quanti i livelli da realizzare c)li visualizzo nella display() tramite l’istruzione glCallList() vantaggio: Gli oggetto che configurano ogni livello,essendo stati costruiti diretta mente nella lista,OpenGL non deve calcolare come costruirli, in quanto precostruiti in memoria, e dunque può visualizzarli subito sullo schermo ---> - lavoro al processore,programma + veloce
4
Struttura del Programma… (Caratteristiche principali)
Il serpente muovendosi non può toccare se stesso, i bordi del campo di gioco e gli eventuali ostacoli,dei muri,presenti sul suo cammino.. Sul codice.. Il campo di gioco per ogni livello è stato realizzato utilizzando un array a tre dimensioni: map[NUM_LEVELS][WEIGTH][HIGTH] a) NUM_LEVELS: rappresenta ogni livello b) WEIGTH, HIGTH :rappresentano le dimensioni del campo di gioco(48x64) Ogni oggetto rappresentato sul campo di gioco(ostacoli,mele,serpente) è stato realizzato mediante figure geometriche(rettangoli,cerchi) RETTANGOLI ostacolo CERCHI serpente,mela -buildRect(int x, int y, int w, int h, int level, int value); buildCircle(); -drawRect(float x,float y,float w,float h); drawCircle(double x,double y);
5
Struttura del Programma… (Caratteristiche principali)
Il serpente muovendosi non può toccare se stesso, i bordi del campo di gioco e gli eventuali ostacoli,dei muri,presenti sul suo cammino.. Sul codice.. buildRect(int x, int y, int w, int h, int level, int value); Importanti i parametri: int level,int value value può assumere tre distinti valori 1,0 o 2: 1 rappresenta posizione di un ostacolo 2 rappresenta posizione del serpente 0 rappresenta posizione libera su cui il serpente può muoversi Quindi il campo di gioco a questo punto può esser rappresentato Come una griglia di 1,0 e 2.
6
Struttura del Programma… (Caratteristiche principali)
Il serpente muovendosi non può toccare se stesso, i bordi del campo di gioco e gli eventuali ostacoli,dei muri,presenti sul suo cammino.. Sul codice.. (es. struttura livello 2):
7
Vediamo ora il codice…
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.