batblaster
Sunday 15 July 2007 - 21:19
Rispondo un po' a tutti...
Per lo SMAU del '93 saluto chiunque scriva, non ho partecipato a molti eventi ma quelli a cui sono stato li ricordo volentieri.
Allora, per quello che riguarda le PALib non è vero che utilizzando quelle si perda la funzionalità del c e di quello che si deve creare come array , puntatori , matrici e cose del genere. Nel kit ufficiale ci sono una marea di librerie , una libreria non è altro che un'insieme di funzioni scritte mediamente in c/c++ che posso servire a vari scopi.. Esempio srs_ObjSetXY(objno,x,y) non è altro che una delle funzioni ella ns libreria che serve per dare allo sprite specificato le corrdinate da assumere a video..
Pensate che nintendo fornisce il pacchetto base del kit di sviluppo e poi tutta una serie di librerie per fare tutto quello che vedete sul DS. Ovviamente se non le sai usare e non sai a cosa servono non ci cavi un ragno dal buco.Le PAlib per un lavoro amatoriale sono un ottima cosa se però pensiamo poi di utilizzare lo stesso codice sul devkit ufficiale , diventando sviluppatori, bhe allora è inutile.. Dico inutile perchè tutti i setting del video , della VRAM (chi è pratico sa di cosa parlo), del pad e dello stylus non hano nulla a che vedere con la PAlib come non lo hanno con le libnds. C'è da dire che se però mi scrivo un motore 3D anche semplice su base opengl usando le libnds il porting viene facile. Faccio un semplice esempio e spiego i rudimenti su come si posso scrivere un pezzo di codice portabile su tutte le macchine..
Le libreirie sono fondamentali , qualsiasi esse siano e spiego il perchè...
Per evitare problemi di porting parte del ns codice è scritto così.
Se nintendo chiama la sua funziona per il tracciamenteto vertici di un poligono nin_vertex(x,y,z) (NON è assolutamente il nome vero) noi creiamo una ns libreria chiamata srslib che fa questo
srs_vertex(x,y,z)
{
nin_vertex(x,y,z);
}
in questo modo se dovessimo portare il gioco su un'altra macchina a noi basterà cambiare solo le chiamate all'interno della ns libreria con quelle della macchina nuova...
Vi siete mai chiesti come mai tutti i giochi per le nuove macchine come ps3 x360 e pc sono uguali ? per questo motivo , sono scritti una sola volta e compilati su 3 macchine usando librerie di porting, ecco perchè molti giochi non li si vedranno mai su Wii.
Ritornando al discorspo PA , per Evrain , se hai esigenze particolari mandami un pm e poi ci sentiamo in privato.
Per le ombre dinamiche NO COMMENT. Ci sono molte cose che fanno parte di un motore 3D tra cui anche quelle, se hai voglia di capire , se hai un po' di esperienza ed anche una PSP ti consiglio un porting di irrlicht (motore3d) per PSP degli ltestudios (Italiani) completamente gratuito.Se ti interessano dei tutorial sulle opengl ti consiglio questo sito
OpenGL Tutorial.
Per quello che riguarda lo shooter in stile r-type non discuto sul fatto che sia facile ma come vedi anche la creazione di script per il management dei nemici è una delle difficoltà. Nulla è semplice a volte è difficile anche scrivere un semplice tool in commandline di conversione di un file da testo a binario... Dipende sempre dal proprio skill e dalla conoscenza del campo.. Esempio io non sono un grafico e non sono un musicista ma su SNES scrissi sia playroutine che converter da mod a SPC700 in assembler perchè non si poteva fare altrimenti. Io non conoscevo e non conosco cosa sia la musica ma sapendo programmare e sapendo cosa dovevo fare lo feci. Non sono un grafico ma il tool di sviluppo grafico che usiamo qui lo ho fatto io, il ns tool permette di creare e gestire tutti i bg del GBA (DS è uguale) di gestire animazioni dei tileset, creare e vedere le preview su come si vedrebbero i BG sul vero GBA , stripping delle tiles duplicate ed inutilizzate. Gestione delle multipalette , gestione degli sprite in tutti i formati del GBA/DS e in modalità custom stripping dei frame uguali negli sprite e creazione delle file table in modo da risparmiare spazio, compressione dei file in uscita e tanto altro ancora. Non sapevo neanche cosa fosse un bitmap o meglio non ne conoscevo il formato ma sapendo programmare mi è stato semplice.
A me purtroppo la scuola non ha insegnato nulla e devo dire che oggi l'insegnamento è molto cresciuto , se guardate indietro vedrete che l'informatica che facciamo e facevamo noi è anni luce arretrata rispetto a quella di altri paesi, in america si danno esami di programmazione anche su videogame. In italia un professore di informatica non ha idea da dove si cominci a scrivere un videogame. Devo dire che conosco tantissimi programmatori ma sono veramente pochi quelli che riuscirebbero a scrivere codice veloce su una macchina piccola come il GBA o il DS.Ci sono una marea di trucchetti che impari con il tempo e guardando cose di altri. Io ho cominciato con il vic20 e devo dire che adoro ancora oggi programmare in assembler qualcosa quando si può... Alcune cose su GBA le ho anche scritte in asm giusto per avere un po' di velocità e devo ringraziare tanti amici che mi hanno aiutato anche per questo quando posso aiuto. Come vi può confermare chi mi ha precedentemente ringraziato.
Spero di aver risposto a qualcuna delle vs domande e resto a disposizione per qualsiasi ulteriore informazione servisse.
Ciao...