PDA

View Full Version : Programmazione Videogame


Vortex Surfers
10-01-2003, 12:26
Qualcuno conosce un libro che tratti la programmazione volta allo sviluppo di videogame?

P.S. anche in inglese

bsummer
10-01-2003, 12:32
Senza comprare libri ,prova a dare un'occhiata qui:

http://www.gameprog.it/

Bye

Vortex Surfers
11-01-2003, 00:28
;) Grazie mille del link!!!!
Dici che libri comunque sia ne esisteranno o no? :confused:
A marzo so che dovrebbe partire la seconda edizione di un corso in toscana proprio rivolto allo sviluppo di videogame i relatori o insegnanti che terranno il corso sono membri del team di sviluppo di Tsunami e Tonic Trouble..... :cool:

loire
12-01-2003, 19:56
Originally posted by "Vortex Surfers"

;) A marzo so che dovrebbe partire la seconda edizione di un corso in toscana proprio rivolto allo sviluppo di videogame i relatori o insegnanti che terranno il corso sono membri del team di sviluppo di Tsunami e Tonic Trouble..... :cool:


Ciao, mi potresti dire dove lo fanno, quali sono le modalità
di iscrizione o + semplicemente il sito di riferimento?

THK

bsummer
13-01-2003, 08:56
Originally posted by "Vortex Surfers"

;) Grazie mille del link!!!!
Dici che libri comunque sia ne esisteranno o no? :confused:
A marzo so che dovrebbe partire la seconda edizione di un corso in toscana proprio rivolto allo sviluppo di videogame i relatori o insegnanti che terranno il corso sono membri del team di sviluppo di Tsunami e Tonic Trouble..... :cool:

Si, sicuramente. Anni fa comprai il libro "Programmare videogiiochi professionali". Era il tempo dei vari doom e doom2, e da allora di acqua sotto i ponti ne e' passata. Tuttavia, ti consiglio di cercare tutorial in rete. Spesso i libri infatti trattano di diversi argomenti, talvolta in maniera superficiale altre volte tralasciando completamente alcuni aspetti.
Per i tutorial invece si trovano aggiornamenti e cmq ne esistono su praticamente ogni argomento.

Aloha

cisc
13-01-2003, 15:05
Scusate se mi intrometto, sapreste dirmi come si fa a caricare il fotogramma da visualizzare prima nel buffer video e poi visualizzarlo in Pascal??? :)

Vortex Surfers
14-01-2003, 11:36
Ma non esistono nemmeno libri che illustrano le librerie e come utilizzarle?
OpenGL e DX intendo....

P.S. iniziamo lo sviluppo di un videogame casalingo? ;) :cool:

bsummer
14-01-2003, 12:31
Beh, ce ne sono a iosa. Basta fare una ricerca con google e ne trovi diversi anche in italiano. Non avendone mai letto uno, tuttavia non saprei quali consigliarti. Puoi in generale affidarti alla casa editrice (che so, ad esempio quelli editi da McGraw-Hill sono notariamente buoni) ma di piu' non saprei dirti.

Per la realizzazione di un gioco casalingo: magari!
Ma ci vuole un sacco di tempo :(

Vortex Surfers
15-01-2003, 11:29
Eddai proviamoci!!!!!
Un giochetto semplice semplice per iniziare..... ;)
Fatevi avanti!!!!! :cool:

Louder Than Hell
15-01-2003, 19:01
vorrei informarvi che dal numero di dicembre su computer programming stanno facendo un corso di progrmmazione con c++/openGL

che per altro si può trovare in rete!

avevo trovato anche un'altra buonissima guida ma non ricordo dove..

The Incredible
17-01-2003, 10:14
Originally posted by "Louder Than Hell"

vorrei informarvi che dal numero di dicembre su computer programming stanno facendo un corso di progrmmazione con c++/openGL

che per altro si può trovare in rete!

avevo trovato anche un'altra buonissima guida ma non ricordo dove..
in rete dove?
grazie :)

lapo
18-01-2003, 13:17
se te la cavi con l'inglese non puoi perderti ---> http://www.gamedev.net

direi il sito di reiferimento x sviluppatori di giochi ...

buon divertimento :)

Louder Than Hell
20-01-2003, 16:50
non lo ricordo ma ti posso scrivere tutti i siti di riferimento alla fine della I lezione:

www.gamedev.net

www.flipcode.com/portal <--prog a portali

www.gameprog.it <--qui ci dovrebbe essere l'articolo intereo(in /index.php?view=373)

www.medialab.chalmers.se <-portal rend.

www.gametutorials.com <-opengl

The Incredible
21-03-2005, 12:24
dopo + di un'anno si è mossa la situazione??
c'è qualche bel link per chi vuole cimentarsi??

MSciglio
21-03-2005, 13:07
Originariamente inviato da The Incredible
dopo + di un'anno si è mossa la situazione??
c'è qualche bel link per chi vuole cimentarsi??

I link sopra sono molto validi. Di libri ce ne sono tanti ma solitamente sono specifici per un determinato settore (programmazione 3d, AI...).

fek
21-03-2005, 17:42
Originariamente inviato da Vortex Surfers
Qualcuno conosce un libro che tratti la programmazione volta allo sviluppo di videogame?

P.S. anche in inglese

http://www.amazon.co.uk/exec/obidos/ASIN/1584502274/qid%3D1111426854/026-0934137-9926042

C++ for Game Programmers.

E poi tutta la serie di Game Programming Gems (dall'uno al quattro).

Da li' in poi e' solo una questione di lavorare molto per conto proprio e poi imparare possibilmente sul campo in un team di sviluppo.

I corsi di programmazione di VG, secondo me, sono perfettamente inutili; risparmiate i soldi.

Black imp
23-03-2005, 02:50
http://www.gametutorials.com/


personalmente preferisco avere sempre materiale cartaceo e manuali ma mi sono accorto che quelli di programmazione di video games e quelli di assembly sono spesso molto costosi e hanno poco materiale all'interno che peraltro si può trovare in rete.

io ritengo indispensabile un buon libro di C++ e quello di programmazione di OpenGl - oltre che una buona preparazione di base su matrici e geometria proiettiva e non -

poi per programmare i video games mi rivolgerei a questi siti menzionati nel thread. a me ha colpito quello che ho linkato.

Black imp
23-03-2005, 03:00
Originariamente inviato da Black imp
http://www.gametutorials.com/





:eek: :eek: :eek: :eek:

ARRRRRGGGGGGGGG!!!!!!!


mi quoto da solo!!! ho appena scoperto che i tutorials adesso sono a pagamento!!!!!!

:muro: :muro: :muro:


che tristezza di persone :rolleyes:

cionci
23-03-2005, 09:01
Che morti di fame...qualcuno ha uno zip di tutti i tutorial ? Volevo riprendere in mano OpenGL...

end.is.forever
23-03-2005, 10:24
Tra l'altro pagare 5 dollari per un tutorial di un cubo che ruota...

Luc@s
23-03-2005, 10:31
Originariamente inviato da fek
http://www.amazon.co.uk/exec/obidos/ASIN/1584502274/qid%3D1111426854/026-0934137-9926042

C++ for Game Programmers.

E poi tutta la serie di Game Programming Gems (dall'uno al quattro).

Da li' in poi e' solo una questione di lavorare molto per conto proprio e poi imparare possibilmente sul campo in un team di sviluppo.

I corsi di programmazione di VG, secondo me, sono perfettamente inutili; risparmiate i soldi.

C'è l'ho.....ma è + incentrato sulle STL e su altri aspetti avanzati del C++....

Black imp
23-03-2005, 11:36
Originariamente inviato da cionci
Che morti di fame...qualcuno ha uno zip di tutti i tutorial ? Volevo riprendere in mano OpenGL...


pensa che tempo fa ne scaricai uno e mi dissi... ' che bello tra un po' me li scarico tutti quando ho tempo' :rolleyes:

fossero chissà che programmi!

71104
23-03-2005, 12:49
Originariamente inviato da cionci
Che morti di fame...qualcuno ha uno zip di tutti i tutorial ? Volevo riprendere in mano OpenGL...
rega', lasciate perdere quei pezzenti, NeHe rulez >>>>>>>>>>>>> ;) ;) ;)

qui il sito:
http://nehe.gamedev.net/

e qui le prime lezioni con cubi rotanti... GRATIS!!! ;)
http://nehe.gamedev.net/lesson.asp?index=01

bye

cionci
23-03-2005, 14:44
Ed io che ero convinto che quello sopra a pagamento fosse il tutorial di NeHe :doh:

DanieleC88
23-03-2005, 18:29
Originariamente inviato da 71104
rega', lasciate perdere quei pezzenti, NeHe rulez >>>>>>>>>>>>> ;) ;) ;)

qui il sito:
http://nehe.gamedev.net/

e qui le prime lezioni con cubi rotanti... GRATIS!!! ;)
http://nehe.gamedev.net/lesson.asp?index=01

bye
Azz, mi hai fregato sul tempo! :cry:
Jeff Molofee è un mito :) e poi la versione CHM delle guide è davvero comodissima. Un ottimo modo di imparare OpenGL, rapido ed efficace.

Leggete tutti NeHe!!! ;)

71104
23-03-2005, 18:53
volete sapere una lezione che mi è piaciuta tantissimo? quella sul cell shading!!! l'effetto finale è assolutamente straordinario, mi piace un sacco! devo essere sincero, non credevo che con OpenGL si potessero fare cose simili; leggendo NeHe ho scoperto che con OpenGL si può fare TUTTO!!! ;) :)

DanieleC88
23-03-2005, 19:07
Originariamente inviato da 71104
volete sapere una lezione che mi è piaciuta tantissimo? quella sul cell shading!!! l'effetto finale è assolutamente straordinario, mi piace un sacco! devo essere sincero, non credevo che con OpenGL si potessero fare cose simili; leggendo NeHe ho scoperto che con OpenGL si può fare TUTTO!!! ;) :)
E dai, non mi togliere le parole di bocca!!! Mi sono scaricato proprio *ora* la lezione sul cel shading (una sola L)...

71104
23-03-2005, 19:14
Originariamente inviato da DanieleC88
E dai, non mi togliere le parole di bocca!!! Mi sono scaricato proprio *ora* la lezione sul cel shading (una sola L)...
:asd:

perdona il mio imperdonabile orrore di ortografia... :ave:

AnonimoVeneziano
24-03-2005, 13:55
Raga, ank'io volevo lavorare con OpenGL , ma su Linux .

Solo che non so come creare una finestra adatta per contenere delle figure rappresentate usando OpenGL , qualcuno mi può dare un' idea?

Dovrei usare X puro? So un pochino di GTK+ per quanto mi riguarda.

Qualcuno ha qualche tutorial sull' argomento?

Grazie

Ciao

VICIUS
24-03-2005, 15:05
Prova con le Qt è veramente una cavolata fare un cubetto che gira :)

ciao ;)

AnonimoVeneziano
24-03-2005, 15:26
Originariamente inviato da VICIUS
Prova con le Qt è veramente una cavolata fare un cubetto che gira :)

ciao ;)


Cacchio, te l'avrò detto 3000 volte che non ho tempo di imparare il C++ in sto periodo :D

Ciao

cionci
24-03-2005, 15:41
I NeHe hanno anche il codice per Linux ;)

DanieleC88
24-03-2005, 17:51
Originariamente inviato da cionci
I NeHe hanno anche il codice per Linux ;)
Giustissimo, e poi per SDL+OpenGL ci sono parecchi tutorial. Senza contare quelli che insegnano ad usare OpenGL in X (glX)...

VICIUS
24-03-2005, 18:51
Originariamente inviato da cionci
I NeHe hanno anche il codice per Linux ;)
Il problema di anonimo è che per creare una finestra in cui disegnare usando solo Xlib da C è un suicidio. Serviranno come minimo 400 linee di codice. :D

ciao ;)

cionci
24-03-2005, 18:57
Non ho guardato come fanno sul tutorial di NeHe, ma se sono funzionanti in aulche modo faranno ;)

AnonimoVeneziano
24-03-2005, 19:38
Ho deciso di usare GLUT , sembra molto comodo , ci ho già fatto qualcosa e si riesce anche a gestire gli eventi con semplicità (con X + glX è un suicidio veramente, è + il codice per gestire la finestra che quello per disegnare effettivamente)

Ciao

cionci
25-03-2005, 02:31
Certo...ed è anche portabile...

gokan
25-03-2005, 09:55
Originariamente inviato da AnonimoVeneziano
Raga, ank'io volevo lavorare con OpenGL , ma su Linux .

Solo che non so come creare una finestra adatta per contenere delle figure rappresentate usando OpenGL , qualcuno mi può dare un' idea?

Dovrei usare X puro? So un pochino di GTK+ per quanto mi riguarda.

Qualcuno ha qualche tutorial sull' argomento?

Grazie

Ciao
Piccolo consiglio, puoi provare ad usare la libreria allegro (però sotto windows), c'è un buon tutorial inglese che ho tradotto (le prime 3 lezioni), lo trovi:
http://www.gameprog.it/index.php?resource=975
oppure
http://elpablito.altervista.org
oppure (l'originale):
http://www.loomsoft.net/resources/alltut/alltut_index.htm

:)

supermario
25-03-2005, 10:42
anche io sono interessato

intanto ho preso il primi 25 tutorials di NeHe tradotti in ita

e il mulo mi sta aiutando per quelli di gamestutorials:rolleyes: :rolleyes:


dalla mia ho un manuale cartaceo di c++ e uno microsoft press per le api di win


mi serve altro???penso che quello che sto scaricando vada bene no?

col c++ sn abbastanza avanti

AnonimoVeneziano
25-03-2005, 12:29
Originariamente inviato da gokan
Piccolo consiglio, puoi provare ad usare la libreria allegro (però sotto windows), c'è un buon tutorial inglese che ho tradotto (le prime 3 lezioni), lo trovi:
http://www.gameprog.it/index.php?resource=975
oppure
http://elpablito.altervista.org
oppure (l'originale):
http://www.loomsoft.net/resources/alltut/alltut_index.htm

:)


Ho trovato grazie :)

GLUT RULEZ :D

Ciao

AnonimoVeneziano
25-03-2005, 12:31
Originariamente inviato da supermario
anche io sono interessato

intanto ho preso il primi 25 tutorials di NeHe tradotti in ita

e il mulo mi sta aiutando per quelli di gamestutorials:rolleyes: :rolleyes:


dalla mia ho un manuale cartaceo di c++ e uno microsoft press per le api di win


mi serve altro???penso che quello che sto scaricando vada bene no?

col c++ sn abbastanza avanti


E' una cavolata opengl, non ti serve nient'altro :p

Ho iniziato ieri sera (dopo aver scoperto come fare a creare le finestre per OpenGL in maniera indolore :D ) e già stamattina faccio girare poligoni texturizzati per tutto lo schermo come un pazzo :D

Ciao

supermario
25-03-2005, 12:34
si l'avevo intuito che fossero facili :D


se le ha imparate supertondo......:p



con le dx cm siamo messi invece in quanto a difficoltà?

AnonimoVeneziano
25-03-2005, 12:40
Originariamente inviato da supermario

con le dx cm siamo messi invece in quanto a difficoltà?


Non ne ho idea, non posso programmarci con DX :p

Ciao

supermario
25-03-2005, 12:42
ah tu sei linux addicted :D

gokan
25-03-2005, 12:56
Originariamente inviato da AnonimoVeneziano
Ho trovato grazie :)

GLUT RULEZ :D

Ciao
Le GLUT sono delle ottime librerie, peccato che non siano più aggiornate..puoi dare un'occhiata alle freeglut, se dovessi avere bisogno di qualche specifica funzione..
Ciao

AnonimoVeneziano
25-03-2005, 14:42
Originariamente inviato da gokan
Le GLUT sono delle ottime librerie, peccato che non siano più aggiornate..puoi dare un'occhiata alle freeglut, se dovessi avere bisogno di qualche specifica funzione..
Ciao


Difatti uso le freeglut .

Non so se non sono aggiornate o cosa, sulla mia distro funzionano egregiamente.

(le glut mi sembra non fossero open source, in tal caso su debian non penso ci abbiano mai messo neanche piede :p)

Ciao

supermario
25-03-2005, 15:04
sarò scemo io ma nn riesco a trovare i 3 headers


#include <gl\gl.h>
#include <gl\glu.h>
#include <gl\glaux.h>


o meglio all'atto di compilare nn mi trova l'ultimo

chi mi da una mano???

AnonimoVeneziano
25-03-2005, 18:42
Non so aiutarti, perchè GLAUX è una roba specifica di Windows e ho sentito in giro che sarebbe da evitare come la peste (non so perchè) , comunque praticamente la sua unica funzione è quella di caricare le BMP in memoria (almeno fin ora nel tutorial) .

Volendo puoi caricare la BMP a mano in una struttura ed evitare GLAUX.

Ho trovato in giro le specifiche dell' HEADER del BMP qua http://www.fastgraph.com/help/bmp_header_format.html

E ci ho fatto una funzione per caricare le BMP (dato che appunto su Linux non esiste) , se non riesci a risolvere se vuoi te la passo

Ciao

supermario
25-03-2005, 19:12
ho risolto cmq mi interessa tantissimo la tua funzione!


può sempre servire e quindi me la studio:)

^TiGeRShArK^
26-03-2005, 11:08
:D
mi ricordo un casino di anni fa quando avevo fatto queste funzioni per visualizzare sullo skermo BMP TIFF e TGA in c con qualke subroutine in assembly :D
il bello è ke ai tempi internet praticamente era allo stato embrionale e non avevo idea delle specifike di questi file....
e qdi giù di editor esadecimale x cercare di capire la struttura del file.....
alla fine se nn sbaglio semplicemente ignoravo i byte dell'header a parte quelli delle dimensioni e leggevo tutti gli altri relativi all'immagine....

pekkato ke con quelle routine assembly arrivavo max a 64 colori! :cry:

ke bei ricordi cmq! :p

sliver80
26-03-2005, 11:36
nessun "alternativo controtendenza" ? :sofico:

http://xith.org/tiki-index.php
http://lwjgl.org

:oink:

AnonimoVeneziano
26-03-2005, 14:35
Originariamente inviato da supermario
ho risolto cmq mi interessa tantissimo la tua funzione!


può sempre servire e quindi me la studio:)


Te la do con piacere , comunque ho scoperto che ce n'è una molto simile nel file contenente il codice per linux della lezione su Texturing (= fatica sprecata :O :p ) .

Adesso la metto un po' a posto magari basandomi un po' anche su questo codice e poi te la posto :p

Intanto ho una domanda .

Nella lezione sul blending il tipo dice che quello non è il metodo migliore di fare il Blending (infatti mettendoci in mezzo una superficie non trasparente sul cubo si incasina ) e che il metodo migliore sarebbe di disegnare tutto con DEPTH buffer attivo partendo dalla figura + lontana a quella + vicina . Se l'immagine è statica viene tutto OK, ma su un cubo rotante appena questo gira viene su un casino perchè l'ordine del depth buffer che gli avevo impresso si scombina .

Come si può fare??

Grazie

Ciao

EDIT: Anche un'altra cosa se qualcuno sa rispondere .

Usando come glBlendFunc GL_ALPHA_SRC e GL_ONE_MINUS_ALPHA_SRC e abilitando contemporaneamente il Lighting ottengo un effetto orribile (cubo rotante mezzo nero e mezzo opaco) , come fare?

AnonimoVeneziano
28-03-2005, 00:06
Mamma mia ragazzi, dopo essermi letto il tutorial 10 mi è venuta una mezza idea di scrivere un mini motorino 3D per cazzeggiare :D

Proprio carino OpenGL, è divertente creare mondi 3D, non credevo mi avrebbe appassionato così :p

Ciao

Luc@s
28-03-2005, 17:10
Originariamente inviato da AnonimoVeneziano

(dopo aver scoperto come fare a creare le finestre per OpenGL in maniera indolore :D )

Ciao


e cioè?

AnonimoVeneziano
28-03-2005, 19:13
Originariamente inviato da Luc@s
e cioè?


GLUT Rulez :D

E' veramente semplice creare finestre con GLUT, ti consiglio di leggere il sorgente di qualche lezione di NeHe per "Linux" per capire come fare a creare pure te finestre pronte per adempiere al loro dovere di contenitori di Viewport opengl ;)

Se hai problemi chiama

Ciao

Luc@s
28-03-2005, 21:07
quindi...da questa base:


#include <GL/openglut.h>
#include <gl/gl.h>

#define W 800
#define H 600
#define TITLE "Ogl Base"

void renderScene()
{
}

void changeSize(int w, int h)
{
}

void idleFunc()
{
}

void processNormalKeys(unsigned char key, int x, int y)
{
}
/*
GLUT_KEY_F1 F1 function key
GLUT_KEY_F2 F2 function key
GLUT_KEY_F3 F3 function key
GLUT_KEY_F4 F4 function key
GLUT_KEY_F5 F5 function key
GLUT_KEY_F6 F6 function key
GLUT_KEY_F7 F7 function key
GLUT_KEY_F8 F8 function key
GLUT_KEY_F9 F9 function key
GLUT_KEY_F10 F10 function key
GLUT_KEY_F11 F11 function key
GLUT_KEY_F12 F12 function key
GLUT_KEY_LEFT Left function key
GLUT_KEY_RIGHT Up function key
GLUT_KEY_UP Right function key
GLUT_KEY_DOWN Down function key
GLUT_KEY_PAGE_UP Page Up function key
GLUT_KEY_PAGE_DOWN Page Down function key
GLUT_KEY_HOME Home function key
GLUT_KEY_END End function key
GLUT_KEY_INSERT Insert function key
*/
void processSpecialKeys(int key, int x, int y)
{
}



int main(int argc, char **argv)
{
glutInit(&argc, argv);

glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);

glutInitWindowPosition(100,100);
glutInitWindowSize(W,H);

glutCreateWindow(TITLE);

glutDisplayFunc(renderScene);
glutReshapeFunc(changeSize);
glutIdleFunc(idleFunc);
glutKeyboardFunc(processNormalKeys);
glutSpecialFunc(processSpecialKeys);


glutMainLoop();
return 0;
}


Parto per tutto senza curarmi di creare la finestra?

AnonimoVeneziano
28-03-2005, 22:21
si, diciamo di si

Ciao

Luc@s
28-03-2005, 22:29
Originariamente inviato da AnonimoVeneziano
si, diciamo di si

Ciao

cosa non hai detto in questa frase?
:rolleyes:

fek
29-03-2005, 14:19
Originariamente inviato da AnonimoVeneziano
Nella lezione sul blending il tipo dice che quello non è il metodo migliore di fare il Blending (infatti mettendoci in mezzo una superficie non trasparente sul cubo si incasina ) e che il metodo migliore sarebbe di disegnare tutto con DEPTH buffer attivo partendo dalla figura + lontana a quella + vicina . Se l'immagine è statica viene tutto OK, ma su un cubo rotante appena questo gira viene su un casino perchè l'ordine del depth buffer che gli avevo impresso si scombina .

Come si può fare??


Non si fa' :)

E' uno dei problemi tosti della grafica in real time, bisogna convivere con l'impossibilita' di ordinare i frammenti trasparenti per pixel in maniera efficiente ancora per qualche anno.
Al massimo puoi ordinare per primitiva, ma il cubo che ruota ti dara' sempre e comunque problemi.

Ordina le primitive trasparenti dalla piu' lontana alla piu' vicina (quelle non trasparenti al contrario) e spera che i problemi non si vedano.

Esistono tecniche di depth peeling per risolvere il problema, ma richiedono troppo passate ed in tempo reale sono ancora troppo costase. Qualche anno ancora...

supermario
29-03-2005, 14:24
Originariamente inviato da fek
Non si fa' :)

E' uno dei problemi tosti della grafica in real time, bisogna convivere con l'impossibilita' di ordinare i frammenti trasparenti per pixel in maniera efficiente ancora per qualche anno.
Al massimo puoi ordinare per primitiva, ma il cubo che ruota ti dara' sempre e comunque problemi.

Ordina le primitive trasparenti dalla piu' lontana alla piu' vicina (quelle non trasparenti al contrario) e spera che i problemi non si vedano.

Esistono tecniche di depth peeling per risolvere il problema, ma richiedono troppo passate ed in tempo reale sono ancora troppo costase. Qualche anno ancora...


come dire.......resitete ragazzi :D