View Full Version : Programmare Videogames
darkmind
11-09-2003, 10:17
Ciao,
vorrei addentrarmi nel fantastico mondo della programmazione di videogiochi, ma non so da dove partire..
.. premetto che sono un programmatore, conosco molto bene visual basic, asp, php e un pò c e java.
Da dove posso cominciare? Cosa devo studiare?
Potresti cominciare lasciando perdere visual basic, asp, php e java e approfondendo C e C++.
Poi se ne riparla.
Anche perchè dipende da cosa intendi per videogioco. Se intendi il giochino 2D con la navetta che spara puoi farlo benissimo in VB o Java. Se hai intenzione di usare anche un minimo di 3D, allora devi usare OpenGL o DirectX. Ma ahimè, usare queste librerie non implica solo una mera conoscenza delle API che poi andrai ad usare, ma anche una conoscenza di computer graphics di base.
darkmind
11-09-2003, 12:35
Originariamente inviato da mjordan
Anche perchè dipende da cosa intendi per videogioco. Se intendi il giochino 2D con la navetta che spara puoi farlo benissimo in VB o Java. Se hai intenzione di usare anche un minimo di 3D, allora devi usare OpenGL o DirectX. Ma ahimè, usare queste librerie non implica solo una mera conoscenza delle API che poi andrai ad usare, ma anche una conoscenza di computer graphics di base.
Beh so che il percorso è molto arduo e vasto, non ho certo la pretesa di creare il nuovo Quake entro domani :D
Lasciar perdere le altre cose (php, java ecc.) xkè? mi servono per lavorare..:cool:
Bando alle ciance so bene che devo approfondire di molto le mie conoscenze in materia c/c++, fin qui ci sono, ma a me interessava avere una specie di "percorso guida", se così si può chiamare, da seguire (visto che l'argomento è piuttosto ampio e articolato).
Es. C/C++, segui questo tutorial o questa guida, leggi questo libro sulle api... ecc. ecc.
Spero di essere stato chiaro.. intendiamoci vorrei solo qualche suggerimento.. vado avanti con umiltà e la voglia di fare.. anche se ci vogliono anni non è problema.
;)
Spero di non essere off topic dicendo che c'è anche la possibilità di programmare con directx 9 managed e C#... A livello di prestazioni c'è solo l'overhead insito in C# perché di fatto la libreria managed è wrapper delle dll in codice nativo...
Qua puoi trovare molte informazioni su directX:
http://msdn.microsoft.com/nhp/default.asp?contentid=28000410
E se le installi nelle seguenti dir trovi dei bei percorsi:
[Documentation]
\Programmi\DX9SDK\Doc\DirectX9
[Samples]
\Programmi\DX9SDK\Samples
Sephirot
11-09-2003, 14:05
avevo una sezione dei preferiti dedicata a queste cose
quando torno a casa magari ti mando qualche link interessante
http://www.gametutorials.com/Tutorials/opengl/OpenGL_Pg1.htm
non è il tutorial con cui ho iniziato io, ma credo che possa andare.
Altre al linguaggio giusto serve anche molta matematica. Preparati a tirare fuori i libri delle superiori/universita.
ciao ;)
Originariamente inviato da darkmind
Beh so che il percorso è molto arduo e vasto, non ho certo la pretesa di creare il nuovo Quake entro domani :D
Lasciar perdere le altre cose (php, java ecc.) xkè? mi servono per lavorare..:cool:
Bando alle ciance so bene che devo approfondire di molto le mie conoscenze in materia c/c++, fin qui ci sono, ma a me interessava avere una specie di "percorso guida", se così si può chiamare, da seguire (visto che l'argomento è piuttosto ampio e articolato).
Es. C/C++, segui questo tutorial o questa guida, leggi questo libro sulle api... ecc. ecc.
Spero di essere stato chiaro.. intendiamoci vorrei solo qualche suggerimento.. vado avanti con umiltà e la voglia di fare.. anche se ci vogliono anni non è problema.
;)
Ciao darkmind,
ovviamente tu sai che dovrai studiare su testi e risorse in inglese ;)
primo libro (http://www.amazon.com/exec/obidos/ASIN/1931841098/gamedev)
***************************
secondo libro (http://www.amazon.com/exec/obidos/ASIN/1931841063/gamedev)
******************************
terzo libro (molto interessante) (http://www.amazon.com/exec/obidos/ASIN/1576104257/gamedev)
***********************
quarto libro (programmazione opengl) (http://www.amazon.com/exec/obidos/ASIN/0761533303/gamedev/)
****************************
testi sulla programmazione Windows:
testo1 (http://www.amazon.com/exec/obidos/ASIN/157231995X/gamedev)
******************
testo2 (http://www.amazon.com/exec/obidos/ASIN/1556154844/gamedev)
*****************
testo3 (http://www.amazon.com/exec/obidos/ASIN/0201824701/ref=nosim/gamedev)
Poi ti consiglio di andare qui (http://www.amazon.com/exec/obidos/ASIN/1576104257/gamedev/103-9900431-7534236)
e in basso alla pagina ci sono una decina di libri interessanti con relativa recensione
E poi, se vuoi visita anche questi siti:
Games Development Help
http://www.flipcode.com
http://www.gamedev.net
http://www.gamasutra.com
http://www.gametutorials.com
http://www.garagegames.com
http://www.gdse.com/
In questo link:
http://www.gamedev.net/reference/start_here/
ti dice come iniziare...
questo sito http://www.dperry.com/ è scritto da un esperto di videogiochi
Fammi sapere se vuoi altro materiale... :)
Buono studio
Originariamente inviato da VICIUS
Altre al linguaggio giusto serve anche molta matematica. Preparati a tirare fuori i libri delle superiori/universita.
ciao ;)
fisica
darkmind
11-09-2003, 15:18
Bene, ce n'è di roba di studiare..
Ci dovrò sbattere la testa! :muro:
Un ringraziamento a tutti :ave:
Un'ultima domanda.. anke se la reputo un pò "stupida"..
studiando animosamente in quanto tempo dovrei riuscire a concretizzare qualcosa??
dipende da cosa!
io ho fatto il primo giochino in opengl in una settimana.
visuale soggettiva, impossibilità di muovere qualcosa se non la visuale e dei cilindri a cui sparare senza che succedesse niente (aumentava solo una variabile a ogni colpo a segno).
per qualcosa di serio credo di aver ancora da lavorare...
sopratutto dato che non mi funziona l'accelerazione 3d su linux
ciauz:mad:
darkmind
11-09-2003, 15:30
Originariamente inviato da NA01
dipende da cosa!
io ho fatto il primo giochino in opengl in una settimana.
visuale soggettiva, impossibilità di muovere qualcosa se non la visuale e dei cilindri a cui sparare senza che succedesse niente (aumentava solo una variabile a ogni colpo a segno).
per qualcosa di serio credo di aver ancora da lavorare...
sopratutto dato che non mi funziona l'accelerazione 3d su linux
ciauz:mad:
Ok. Tnx.
dipende anche dal livello di intelligenza e dalla capacità di apprendere che uno ha.
Magari io potrei metterci 1 anno ad imparare tutto e tu un mese, perché magari io potrei essere di coccio :)
Cmq dai darkmind, impegnati, così tra un paio d'anni tra i Credits di Quake vedremo anche il tuo nome ;)
Originariamente inviato da darkmind
Bene, ce n'è di roba di studiare..
Ci dovrò sbattere la testa! :muro:
Un ringraziamento a tutti :ave:
Un'ultima domanda.. anke se la reputo un pò "stupida"..
studiando animosamente in quanto tempo dovrei riuscire a concretizzare qualcosa??
premessa: ue... non dimentichiamo gameprog (http://www.gameprog.it/)
per il C++
C++ una panoramica sul linguaggio (http://www.programmazione.it/Articles/corso/)
il tempo deve essere immediato... devi ottenere subito risultati... ovviamente non parliamo certo di motore 3D ecc.... ecc...
si parte a piccoli passi ovvio ma è bene fin da subito concretizzare ogni piccolla scoperta... e sopratutto... se vuoi davvero ottenere qualcosa... cerca di capire realmente ciò che stai facendo... copiare codice qua e la facendo un paio di modifiche e poi dire: bello, ho fatto un motorino 3D, mi muovo... telecamera ecc... ecc...
senza in realtà sapere il perchè delle cose non ti serve a niente e ti complica solo le cose per ottenere risultati maggiori...
ad esempio le DX vanno benissimo(o OpenGL) però ti aiutano 'nascondendoti' alcune cose... ciò è a tuo vantaggio ma se non ne capisci il perchè... non si fa strada...
quindi... la sperimentazione 'via software' è la strada da seguire.
Non studiare a casaccio... poniti un obiettivo (raggiungibile) e cerca informazioni/studia tutto ciò che ti serve per raggiungerlo cercando di capire il più possibile(non mi stancherò mai di ripeterlo :O )
:cool:
darkmind
11-09-2003, 20:05
Originariamente inviato da DoomIII
Non studiare a casaccio...
:cool:
Ecco, hai colto il nocciolo della questione.
Vorrei creare qualcosa tipo Doom :p , Castle Wolfeinstein (i primi della serie)... ecco l'obiettivo;
Percorso.. approfondisco bene c++ (ho due buoni manuali cartacei e diversi pdf) e poi cosa mi consigli?
Originariamente inviato da darkmind
Ecco, hai colto il nocciolo della questione.
Vorrei creare qualcosa tipo Doom :p , Castle Wolfeinstein (i primi della serie)... ecco l'obiettivo;
Percorso.. approfondisco bene c++ (ho due buoni manuali cartacei e diversi pdf) e poi cosa mi consigli?
:)
bè... i tutorials digametutorials (http://www.gametutorials.com/Tutorials/tutorials.htm) sono ottimi... ed in generale nei link che ti sono stati suggeriti (ormai dovresti averli d'obbligo tra i preferiti :cool: ) trovi un sacco di roba utile.
qui gamedev reference (http://www.gamedev.net/reference/) se clikki ad esempio su gameprogramming (questa è una vera miniera) trovi un bel po di articoli... ed anche sorgenti (compreso quello di Doom).
Ma per tutto questo è un po presto... ti conviene cmq dare un occhiata per capire cosa può servirti... e per renderti conto che c'è tanta roba dietro e misurare un po le te conoscenze per verificare se sei totalmente disorientato o se ci sono aspetti nei quali hai qualche base.
Però... approfondito il C++ ti conviene usarlo subito... hai insomma l'obiettivo di uno shooter3D... ma prima ci sono tante cose... sperimenta... poniti i problemi e cerca di risolverli.
Non è ancora questione di DX o OpenGL... dovresti disegnare pixel per pixel (fallo in c++ con chiamate asm, o su GDI di windows, o eventualmente anche con DX o OpenGL ma usale solo per arrivare al pixel) e inizia porti questi obiettivi...
disegnare un pixel... muoverlo... ruotarlo... disegnare linee...
dai un senso a questo linee (puoi fare una navetta con 3 linee) ed affronta problemi come collisioni... il motore stesso di 'gioco' e cosi via via ... passo dopo passo...
darkmind
11-09-2003, 22:20
Tnx, farò il possibile.
Avrai una copia gratuita del mio primo videogame :D
Originariamente inviato da darkmind
Tnx, farò il possibile.
Avrai una copia gratuita del mio primo videogame :D
Io mi accontento di una pirata :D :D
darkmind
12-09-2003, 09:06
Originariamente inviato da mjordan
Io mi accontento di una pirata :D :D
Pirata..??
:nonsifa:
Eh eh queste cose non si fanno.. :D
Originariamente inviato da darkmind
Pirata..??
:nonsifa:
Eh eh queste cose non si fanno.. :D
No non mi hai capito. Sei tu che mi mandi una copia pirata del TUO gioco :D Autocrakkarsi i giochi mica è illegale :D :D
darkmind
12-09-2003, 22:09
Originariamente inviato da mjordan
No non mi hai capito. Sei tu che mi mandi una copia pirata del TUO gioco :D Autocrakkarsi i giochi mica è illegale :D :D
Nuova forma di pirateria informatica... Autocracking
Dicesi Autocracking il procedimento, mediante il quale un utente informatico non comune, in preda ad un breve ma intenso periodo di pazzia acuta, decide di violare ciò che egli stesso ha creato..
Beh un pò come installare l'antifurto a casa e provare a scassinare la porta per vedere se scatta l'allarme..
:D
Originariamente inviato da darkmind
Nuova forma di pirateria informatica... Autocracking
Dicesi Autocracking il procedimento, mediante il quale un utente informatico non comune, in preda ad un breve ma intenso periodo di pazzia acuta, decide di violare ciò che egli stesso ha creato..
Beh un pò come installare l'antifurto a casa e provare a scassinare la porta per vedere se scatta l'allarme..
:D
Esatto. :D Vedi che ti ho dato pure un altro esercizio da fare :D :D Testare la validità delle proprie protezioni :D
supertondo
14-09-2003, 10:24
Se ti interessa qui http://www.vertigosoftware.com/Quake2NETDownloads/Quake%20II%20.NET%20Source.zip danno il sorgente di Quake II per .Net.
Si compila con Visual C++.
Mi immagino le prestazioni eccelse con .Net !!!
vBulletin® v3.6.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd.