25.11.2014 Views

Treball de recerca - IES Narcís Monturiol

Treball de recerca - IES Narcís Monturiol

Treball de recerca - IES Narcís Monturiol

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Bubble Racer: Com crear un vi<strong>de</strong>ojoc amb Blen<strong>de</strong>r<br />

Robert Planas<br />

Per solucionar això s'ha creat un objecte anomenat Dad que s'encarrega <strong>de</strong> la posició i la<br />

direcció. Emparentat hi ha un objecte anomenat Bub1, el qual s'encarrega <strong>de</strong> d'inclinació. Per<br />

últim hi ha la bubble, que pot ser qualsevol <strong>de</strong> les 3 disponibles, i que s'encarrega <strong>de</strong> la rotació<br />

endavant o acceleració. Cada fill veu les seves coor<strong>de</strong>na<strong>de</strong>s locals influencia<strong>de</strong>s per el pare,<br />

però el pare no és influenciat per les rotacions <strong>de</strong>ls fills. D'aquesta manera po<strong>de</strong>m crear les<br />

rotacions necessàries sense que l'objecte es <strong>de</strong>scontroli.<br />

A l'hora <strong>de</strong> implementar això al motor <strong>de</strong> joc tenim que tenir en compte altres factors.<br />

Primerament, l'objecte que rebrà les col·lisions. Pot ser qualsevol <strong>de</strong>ls 3, però en aquest cas he<br />

escollit que sigui l'objecte Dad. Com que ja n'hi ha un que rep les col·lisions, els<br />

altres no ho tenen que fer, si ho fessin, al estar un dins <strong>de</strong>l altre estarien<br />

col·lisionant constantment el que crearia inestabilitat. Un altre factor que<br />

hem <strong>de</strong> tenir en compte és que els objectes invisibles, el Dad i el Bub1 no<br />

han <strong>de</strong> tenir textura ni tampoc fa falta que tinguin malla, hi un tipus <strong>de</strong><br />

primitiva sense malla anomenada Empty que ens pot ser molt útil. A la foto<br />

d'amunt po<strong>de</strong>m veure una representació <strong>de</strong>ls objectes esmentats.<br />

4.5. Moviment i rotació: Script i lògica<br />

Quan en el seu moment vaig realitzar l'script <strong>de</strong> moviment, no coneixia la funció<br />

bge.logic.getCurrentScene().objects, és per això que en el seu lloc vaig usar actuadors. Encara<br />

que el que explicaré a continuació es podria fer <strong>de</strong> la mateixa manera només amb codi, l'ús<br />

d'actuadors va crear alguns reptes difícils <strong>de</strong> solucionar. M'interessa mostrar com vaig<br />

solucionar aquests reptes per si algú es troba amb els mateixos problemes que jo. En aquest<br />

apartat, i en els que venen a continuació, només explicaré fragments <strong>de</strong>l codi, el codi complert<br />

el podreu veure en els annexos. Els fragments estan dividits per les seves funcions, tals com la<br />

selecció <strong>de</strong> la bubble, el teclat, el moviment i la rotació.<br />

Pàg. 18

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!