diumenge, 23 de març del 2008

Pràctica de "s'aranyot" publicada!

A alguns de vosaltres ja vos havia xerrat de que ens havien encomanat fer un monstre en 3D per a l'assignatura d'Informàtica Gràfica. Per als qui no els ho digués, comentar-los que la finalitat acadèmica és aprendre les bases per dibuixar en 3D amb formes senzilles i adquirir una concepció espacial de posició en un món de tres dimensions, així com aplicar-hi transformacions (rotacions i translacions) i alguns efectes d'il·luminació i textures. Amb aquesta base es pot començar a programar un joc per a ordinador (i amb molts coneixements addicionals, experiència en aquest camp i essent un equip relativament gran de persones, es pot aconseguir acabar de programar un joc per a ordinador). També diré que la meva finalitat (aquesta no és acadèmica) és que aquells que tenguin curiositat per veure una petita mostra de les coses que feim a la universitat els que estudiam informàtica o tenguin per hobbie els gràfics o els jocs (si són experts se'n riuran, és clar), puguin veure-ho. I també pels aficionats a la programació, o informàtica en general, esper també omplir-los amb una petita mostra del què es pot fer i ho puguin punyir tant com vulguin, ja que en public el codi font i en podran fer el que vulguin (respectant la GPL).

No és cap virgueria, ni molt menys. Té les seves coses bones per un que s'hi acaba d'endinsar (com jo mateix o molts dels que es matricularan en els pròxims anys), però no crec que pugui satisfer a ningú si no és que realment es sent atret per aquesta temàtica, amb molta curiositat.

Vull donar les gràcies a tres persones (que esper es sentin identificades), sense les quals consider que aquest projecte no hauria estat el mateix. La primera, en l'aspecte tècnic, per haver fet feina plegats l'any passat (i sobretot a l'estiu) amb OpenGL i haver-me ajudat a aprendre lo més dificil de tot: per on embestir-li. La segona, per haver seguit el desenvolupament, haver-me aconsellat en la selecció de bones textures i haver-se près tantes molèsties provant coses amb el seu portàtil i donar-me bones idees. La tercera, (i com la segona) no per això menys important que la primera, li agraeixo els seus consells sobre estètica, en especial en lo referent a les banyes corbades, ja que sense ella no m'hauria acabat de decidir per aquest estil.

Observació per a programadors: s'executa molt lent en molts ordinadors en què ho he provat. No he estat capaç de determinar la causa exacta o causes en conjunt que en són responsables. Pentura és perquè les textures són grans (512 x 512 pixels és gran?), per la multitud de càlculs que es realitzen en el Display() (entre ells fer particions dels rectangles perquè estiguin ben il·luminats), pel petit tamany de les particions dels rectangles (definit a les constants _SX i _SY, al fitxer comun.h) i, per tant, més número de particions, o si senzillament el món dissenyat és massa gran (d'aproximadament 500 x 200 x 500 unitats en coordenades OpenGL) per renderitzar-lo per complet en temps real.

Baixar programa i codi font
(l'executable del monstre està a "Etapa7\Debug\Etapa7.exe")

Algunes imatges més