Sviluppare videogiochi non e' cosi' difficile come puo' sembrare, si possono usare tool pratici anche se un po' vincolanti detti "click tool" quali Game Maker o The Games Factory, oppure per chi ha gia' qualche rudimento di programmazione l'ottimo Game Editor che ci danno una base gia' pronta su cui lavorare.
Per chi volesse farne proprio a meno, puo' sempre scrivere direttamente il suo gioco da zero, realizzare l'intero programma dall'inizio alla fine con l'ausilio di librerie quali SDL, Allegro o XNA di Microsoft. Utilizzare questo metodo al posto di quelli prima citati non vuol dire farsi volutamente del male, risulta essere un ottimo esercizio didattico e ci dara' la possibilita' di non essere vincolati a limiti del programma o di piattaforma (Escluso per XNA che e' disponibile solo per sistemi Windows). E' anche possibile utilizzare piattaforme indipendenti dal sistema operativo, come Flash (Flex) o Java che possono vantare un loro gestore grafico e una compatibilita' pressoche' universale.
In supporto a programmi o librerie, in giro per il web possiamo trovare una miriade di risorse come l'italiano Game Programming Resource Faciity, che fra le sue pagine virtuali tratta argomenti relativi ai click tool e le librerie piu' utilizzate dai game programmers con tutorial e articoli pratici.
In lingua inglese ci sono community storiche come Gamedev, Gamasutra oppure la piu' piccola e forse meno conosciuta FreeGameDev. Quest'ultima e' una delle mie preferite, una piccola comunity di sviluppatori veramente graziosa, la gente che vi ci ho trovato e' stata molto cordiale e professionale.
Tuttavia per cominciare, nel bagaglio culturale di un game programmer devono esserci nozioni basiche di matematica e trigonometria, programmazione e volendo anche grafica. Ovviamente grazie ai click tool molte di queste cose possono essere lasciate al caso dato che provvederanno loro il piu' delle volte a gestire il tutto.
Giochi piu' complessi possono richiedere conoscenze piu' specifiche della materia e non parlo solo della matematica o della programmazione, concetti propri della programmazione dei videogiochi come collisioni, scrolling, fisica etc... Per fortuna molti esempi pratici su come gestire questi particolari aspetti nei nostri giochi li si possono trovare su molti siti o blog come quelli gia' citati oppure come GPwiki e LoserJuegos, ricchi di esempi e tutorial per ogni livello o preparazione e articoli teorici, anche se l'ultimo dei due peccato sia in spagnolo.
Per quelli gia' piu' afferrati in materia di programmazione e affini ci sono Coke & Code, Game Programming Snippets in genere piu' orientati verso linguaggi quali Java.
Io personalmente consiglio di cominciare a realizzare giochi partendo dalla scrittura di codice, volendo anche con tool quali Game Maker o Game Editor per poter avere una base semplice e intuitiva da cui partire per chi ha meno esperienza in programmazione.
Per chi ha gia' quache rudimento di programmazione, magari in C, con piccole nozioni base e' decisamente consigliato il sito SDLGamer, passo passo e con esempi pratici correlati di immagini spiega i concetti della programmazione di videogiochi utilizzando le librerie SDL. Una volta appresi i concetti base si puo' passare a quelli piu' specifici di un gioco come spiegano i tutorial di Aaron Cox e di Sol. Tutti e due i siti vi accompagneranno passo passo con esempi pratici alla realizzazione di un semplice e completo gioco coprendo vari aspetti della programmazione di esso. Le nozioni che si apprendono da questi tutorial sono facilmente spendibili sui svariati linguaggi programmazione e alle volte nei vari click tool con i giusti accorgimenti.
Altri tutorial molto validi li si possono trovare sul sito di Lazy Foo molto conosciuti e apprezzati, e sui siti SDL Tutorials e Ubuntu-gamedev wiki. Altrettanti tutorial molto validi o esempi di giochi completi si trovano su svariati siti di game programmer amatoriali, come questo blog oppure il sito Pix3lworkshop (del sottoscritto u.u) .
Anche se il C++ e le SDL siano predonimanti nei tutorial non si preclude il fatto che i giochi possano essere realizzati in altri linguaggi o librerie, quali C (come i giochi presenti sul mio sito) o QBasic come si fa nella piccola community di Pete, persino in Java seguendo i tutorial di zetcode.
Utilizzare altri linguaggi o librerie quali Allegro o XNA richiede solo al programmatore di comprendere le logiche base di funzionamento di gestione della grafica, input etc...
Tutto il resto viene con la pratica e tanto gioco!
Iscriviti a:
Commenti sul post
(
Atom
)
1 commento :
SDL gamer non lo conoscevo, carino! Ricorda le vecchie riviste
Posta un commento