giovedì 3 novembre 2011

Libro 'ALLEGRO.H DALLA A ALLA Z'

Creare videogiochi è sempre stato il mio sogno fin da quando ero bambino con il mio piccolo Commodore 64. Ora che sono passati tanti anni ho deciso di realizzare un sito per chi, come me, ha voglia di realizzare un videogame tutto da solo con poche righe di codice in linguaggio C / C++.
Sono sempre stato dell'idea che manipolare l'ambiente grafico di un computer sia uno degli aspetti più complessi della programmazione.
In questo sito sono spiegati, tramite esempi pratici, i sistemi base di realizzazione delle routine più diffuse nei videogiochi come: scrolling,
visualizzazione di bitmap, sonoro, controlli di gioco, sprite, ecc...
Proprio per venire incontro a ragazzi che come me, hanno il sogno nel cassetto di scrivere un proprio video game, ho scritto un libro in cui spiego un passo alla volta, partendo da zero, come creare un videogioco completo e perfettamente funzionante sotto Windows e Linux.
Saranno sviluppati vari listati per questi due sistemi operativi un passo alla volta. Partendo dall'installazione della libreria allegro.h, fino a creare complessi videogiochi.
Il libro inizia spiegando i rudimenti della grafica 2D e poi di quella 3D con la gestione delle openGL in allegro.h grazie una una libreria supplementare chiamata alleggl.h. La panoramica dei videogiochi attuali e di ieri è sviluppata a 360 gradi con l'uso di software completamente gratuiti.
In questo libro ho raccolto tutti i listati più significativi che ho scritto nel corso degli anni. Molti erano già presenti su internet, nel mio sito personale(www.bertinettobartolomeodavide.it), dopo tutto questo tempo ho deciso di ricontrollarli... In questo modo li ho resi più chiari e sono stati eliminati molti bug. Tutto questo materiale è stato utilizzato da me per “imparare ad utilizzare la libreria allegro.h”.
Questo manuale deve essere considerato un libro a tutti gli effetti che raccoglie dei listati in linguaggio C/C++ commentati. L'utente certamente imparerà le basi della programmazione di videogiochi con la libreria allegro.h e allegGL.h.

Elenco immagini demo prodotti



Vedi l'elenco delle immagini dei demo prodotti con allegro.h grazie al libro 'allegro.h dalla a alla z', sia 2D, che 3D openGL:









Alcuni risultati particolarmente significativi, realizzabili con questo libro su allegro.h:


Clone di space invader semplice





Scaricabile a questo link



Clone di space invader, grafica dettagliata






Scaricabile a questo link




Clone del vecchio pong





Scaricabile a questo link



Cubo con texture e luci in openGL






Disponibile a questo link




BeastPC - remake shadow of the beast






Disponibile a questo link




Sono disponibili molti e molti altri esempi creati partendo dagli strumenti contenuti nel libro 'Allegro.h dalla A alla Z', esaminabili a questo sito web

Si tratta sicuramente dello strumento ideale per lo sfruttamento completo dalla libreria allegro.h 




mercoledì 2 novembre 2011

AllegroBBD.h (Ver. 0.02) - LIBRERIA C/C++ per allegro.h - Sviluppo videogames avanzati

Sono anni che sono alla ricerca di sistemi semplici per la creazione dei miei videogames. Con questo mio lavoro, realizzato nell'arco di 8 mesi, ho potuto raccogliere alcune routine C, tutte sviluppate da me medesimo, raggruppandole in comandi specifici. Riuscendo quindi a spianare la strada al programmatore che usa allegro.h v4.2 e le sue librerie parallele, grazie a questo mio file header contenente i comandi che seguono.
Ovviamente il contenuto di questo lavoro è a scopo didattico ed ogni programmatore dovrà scegliere se personalizzarlo a seconda delle proprie necessità o se utilizzarlo così com'è... Anche per via dei molti bug presenti.
L'intento della libreria allegrobbd.h è quello di far capire all'utente medio che possiede già alcuni rudimenti di C, come è possibile creare nuove funzioni, riciclandole più e più volte, al fine di snellire la programmazione di video giochi e/o demo grafici e sonori.
Il contenuto dei comandi che seguono sarà soggetto con ogni probabilità, a revisioni nelle versioni successive di allegrobbd.h finalizzate a migliorarne i contenuti. Credo che valga la pena di tenere gelosamente custoditi in un posto molto sicuro del vostro PC, le informazioni che potrete appendere da questa libreria ed i suoi esempi. Sarà la vostra carta vincente nei confronti di un agguerrito rivale programmatore!
Cercherò di ampliare il lavoro qui esposto frequentemente, se il tempo a mia disposizione lo permetterà. Per questo ho in mente di realizzare alcuni giochi/demo didattici con l'uso dei comandi esposti nel presente documento. Inoltre ho voglia di creare nuovi comandi che possano spingere gli utilizzatori di allegro.h 4.2 ad acquisire un sempre più alto livello di sviluppo. Oggi (06/06/11) mentre scrivo, allegrobbd.h contempla tre librerie di base like-allegro, ovvero allegro.h, allgGL.h, allMP3.h. Presto vorrei implementarne altre sempre attraverso strategie che ne agevolino l'uso per l'utente.
Questo materiale è stato sviluppati su Windows XP x64 ed è stato testato con macchina virtuale sia si Windows XP 32 Professional che su Windows 7 Ultimate x64 con risultati perfetti. Il software di compilazione è sempre stato DevCpp.
Non escludo che con alcuni semplici accorgimenti tutto il materiale che ho sviluppato possa essere compilato su altri sistemi, come: Mac OS, Linux, QNX, Amiga OS, Dos, BeOS e altri...
Raccomando ancora, prima di augurarvi buon lavoro, di esaminare i miei altri testi sulla libreria allegro.h, in quando credo possano essere di aiuto ad ogni utente, sia principiante che medio e anche avanzato.

Segue la lista dei demo realizzati con allegroBBD.h:
Uso MP3
Orizzonte pseudo 3d

Collisioni precise
Gestionetotale sprite


















Controllo fotogrammi d'esecuzione
gestione openGL










Dissolvenza classica
Dissolvenza a punti










Dissolvenza worm
Motore 3d Voxel
Simil Space Harrier









Pseudo Out Run










La seguenza di binari eseguibili sotto Windows è disponibile a questo indirizzo web:
http://www.bertinettobartolomeodavide.it/programmazione/ALLEGROH/allegrobbd/DemoBin.html

Ogni demo sviluppa un comando, a parte Space Harrier e Out Run che sono composti da un insieme di comandi contenute in allegroBBD.h

martedì 1 novembre 2011

Videogiochi in linguaggio C con la libreria allegro.h facilmente


Seguo lo sviluppo del mondo dei videogiochi fin da quando sono bambino. Per me è sempre stata un'attrazione irresistibile. Trascorrevo ogni istante a leggere riviste del settore, a scuola, in spiaggia, a casa, in pullman... Con gli anni sono passato da utente passivo ad attivo programmatore.
La vera programmazione di routine per videogames è arrivata quando ho conosciuto la libreria allegro.h, prima in formato DOS e poi su Windows. Ora mi sono stabilizzato ad allegro.h versione 4.2, insieme a varie estensioni come allegMP3.h e AllegGL.h...
Risultato libro - PROGRAMMARE UN VIDEO GIOCO PASSO PER PASSO CON ALLEGRO.H -
Da allora sono stati scritti diversi libri sull'argomento, dove il primo dei quali è stato 'PROGRAMMARE UN VIDEO GIOCO PASSO PER PASSO CON ALLEGRO.H' sulla programmazione di un video gioco funzionante. Qui il listato viene via via ingrandito, capitolo per capitolo. Ogni aggiunta tratta un tema diverso della programmazione in linguaggio C e allegro.h(grafica, suono, sprite, controlli e altro).
Un esempio openGL tratto dal libro - Allegro.h dalla A alla Z... -
Da questo testo ci si può avviare alla conquista di altre particolari capacità di programmazione attraverso l'esame di molteplici routine realizzabili con la libreria in questione. Il secondo libro quindi, che permette traguardi ancora superiori è 'Allegro.h dalla A alla Z...' dove la quantità di informazioni, sia di base che avanzate con allegro.h e il C, non può farsi scartare da un programmatore seriamente intenzionato ad ottenere risultati sull'argomento.
Dissolvenza relizzabile con uno dei comandi della libreria allegroBBD.h
Ancora però i traguardi non sono finiti, dato che da qualche mese è stata inserita una nuova libreria denominata allegroBBD.h in cui sono spiegate soluzioni affini alla creazioni di comandi(funzioni) riutilizzabili per funzioni grafiche e sonore avanzate alleggerendo la quantità di codice per il programmatore. AllegroBBD.h contiene una decina di comandi base che da soli permettono la realizzazione del 99% delle routine presenti nei videogame 2d e anche molti 3d(vedi motore VOXEL). Insieme alla libreria sono inclusi alcuni pseudo videogame realizzati unicamente grazie ai comandi aggiuntivi che essa contempla. E' impressionante notare che un videogame basato su allegroBBD.h riesca a funzionare con poche decine di linee di codice C!!!
Vari manuali(anche video-manuali) e ovviamente il compilatore necessario alla realizzazione di videogiochi basati su allegro.h ver 4.2 sono tutti disponibili sul sito web: http://www.bertinettobartolomeodavide.it/programmazione/ALLEGROH/, così come i lavori sopra descritti. Buona programmazione.