15 – Godot – Aeglustamine ja kiirendamine (Harjutus10)

Aeglustamine ja kiirendamine

Aeglustuse ja kiirenduse (Slow in and slow out) puhul peame teadma, et ükski liikumine ei tohiks olla päris konstantne (muutumatu). Eriti just kui liikumine hakkab, lõppeb või vahetab järsult suunda. Näiteks kui võtame meie tegelaskuju, siis peaks see algama kiirendusega ja enne kui peatub, tuleb aeglustada.

Hetkel on meil tehtud siis nii, et kiirus on kogu aeg ühesugune const SPEED = 500 . Aga tekitame kiirenduse jaoks uue konstandi ja suurendame seda liikumisel.

Ainuke mure on nüüd see, et kiirus kasvab lõpmatult. Me peame nüüd määrama, et kui ta jõuab soovitud kiiruseni, siis enam ei kasvaks. Kasutame siinkohal min() ja max()  funktsioone.

Nüüd kiirendab meie tegelaskuju nii vasakule kui ka paremale. Aeglustuse jaoks kasutame lineaarse interpoleerimise funktsiooni lerp() . See tähendab, et anname algus ja lõppväärtuse ning valime väärtuse, mite võrra seda muudetakse. Ja lisame selle osasse, kus tegelaskuju seisab. Ehk nüüd alates viimasest kiirusest nullini, muudetakse seda 0.2 (ehk 20%) võrra. Numbrit madalamaks viies tekitab juba tunde, et karakter on jääl. Vali sobilik väärtus.

Harjutus 10

Loo mittevägivaldne 2D platformer mäng

  • vali tegelaskuju, millel on olemas sprite-animatsioonid idle, run, jump
  • leia ka taust ja maapind
    • maapind peab olema selliselt korraldatud, et tegelaskujul on vähemalt 2 takistust (auku) jõudmaks erkaani teise serva
    • Näiteks:
      godot
  • loo tegelaskuju:
    • pane tegelaskuju liikuma ja hüppama
    • lisa liikumistele animatsioonid
    • lisa liikumisele kiirendused ja seisma jäämisele aeglustus
      godot
  • Loo skript
    • näita nurgas elude arvu 3
    • iga kord, kui tegelaskuju kukub läbi augu, siis võetakse elu maha
    • kui elud otsas tuleb kiri “Mäng läbi”
    • vihje: kui tegelaskuju asukoht on suurem kui ekraani kõrgus, siis võetakse elusid maha ja muudetakse tegelaskuju asukohta
    • vihje2: kui elud otsa saavad, siis kuvatakse mäng läbi ja mäng läheb pausile

Viimased postitused

Meist

metshein.com on pakkunud juba üle kümne aasta tasuta eestikeelseid infotehnoloogiaga seotud kursusi. Sama kurssi püütakse järgida ka edaspidi. Eesmärk muuta arvutiõpe võimalikult lihtsaks!

metshein.com: parim eestikeelne koolitusportaal

Autorist ja kontakt: kliki siia

Hetkel õpivad:

There are no users currently online

Kontrolli tunnistust

Tööribale