Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C: sdl ja liikkuminen

vehkis91 [21.04.2008 16:19:32]

#

Olen tehnyt harjoituksia sdlää käyttäen ja nyt mietin, että miten saan jonkun näyttämäänä, että se kävelee(pelihahmo), eikä vaan mee samassa asennossa eteenpäin?

Pitäisikö tehdä kaksi kuvaa, joita kutsutaan vuorotellen?

TsaTsaTsaa [21.04.2008 16:35:13]

#

Joko usealla kuvalla tai sitten yksi kuvatiedosto, jossa kaikki animaation kuvat vierekkäin tai allekkain ja lisäksi jokin animaatiolaskuri, jonka mukaan aina haetaan oikea kuva (tai oikea osa kuvasta, jos kaikki yhdessä).

vehkis91 [21.04.2008 16:38:16]

#

Laskuri?

jcd3nton [21.04.2008 16:48:33]

#

kuvaNro++; jos viimenen kuva niin kuvaNro = 0;

TsaTsaTsaa [21.04.2008 16:49:21]

#

Laskuri.

// Ukko on liikenteessä
void piirraKavelevaOtus(Otus* ukko) {
  // Piirretään kävelevän ukon kuva kohtaan (ukko->x, ukko->y). ukko->kavelykuva
  // sisältää kaikki kävelyanimaation kuvat vierekkäin, yksittäisen kuvan leveys
  // 64 ja korkeus 128.
  piirraKuva(ukko->kavelykuva, ukko->x , ukko->y , ukko->laskuri*64, ukko->laskuri*64+64, 0, 128);

  ukko->laskuri = (ukko->laskuri+1) % ukko->kavelykuvienmaara;
}

Hyvinkin hätäisesti väännetty esimerkki, ei järkevä, mutta toivottavasti selkeyttää laskurin tarkoitusta.

vehkis91 [21.04.2008 17:03:41]

#

kk

moptim [21.04.2008 19:21:58]

#

Ja eiköstä ton laskemisosan voi toteuttaa myös näin:

if(++ukko->laskuri==ukko->kavelykuvienmaara) ukko->laskuri=0;

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta