Animacija i promenljive — pomeranje objekta
Lekcija 5 od 14
Zašto su promenljive važne u animaciji?
Promenljive čuvaju informacije koje se menjaju dok program radi. Na primer, pozicija lopte koja se kreće po ekranu.
Jednostavna animacija lopte
# Pozicija lopte
x = 50
y = 200
dx = 3 # brzina po x osi
def setup():
size(600, 400)
frameRate(60) # koliko puta draw() radi u sekundi
def draw():
global x, y
background(220)
# crtanje lopte
fill(255, 0, 0)
ellipse(x, y, 50, 50)
# pomeranje lopte
x += dx
# odbijanje od ivica
if x > width - 25 or x < 25:
dx = -dx
Rezultat
Crvena lopta se kreće horizontalno i odbija se od levog i desnog zida prozora.
Objašnjenje koda
global x, y— promenljive se koriste unutardraw()x += dx— povećava ili smanjuje poziciju lopteif x > width - 25 or x < 25:— lopta se odbija od levog i desnog zidaframeRate(60)— draw() se izvršava 60 puta u sekundi
Savet: Možeš promeniti
dx na decimalni broj (npr. 1.5) za sporije kretanje lopte.
Poređenje sa Java verzijom
Isti primer u Java Processing-u se piše skoro identično, samo bez global i sa Java tipovima promenljivih.
Processing sa Javom — animacija lopte
Eksperimenti
- Promeni brzinu lopte (
dx) i vidi kako se ponaša. - Dodaj promenljivu za y osu (
dy) i kreiraj dijagonalno kretanje. - Promeni boju lopte koristeći
fill().
Rezultat dijagonalnog kretanja
Lopta se kreće dijagonalno po ekranu i odbija od zidova.
Mini projekat: animirana scena
Kombinuj animaciju lopte sa prethodnim lekcijama:
- Dodaj sunce (krug) koje menja boju
- Nacrtaj kuću (pravougaonik + trougao)
- Animiraj oblake koji se pomeraju horizontalno
Savet: Probaj da koristiš više promenljivih za koordinatu svakog oblaka i sunčevu boju.
Cilj je da naučiš kako promenljive kontrolišu pozicije i animaciju.
Sledeća lekcija
□ Interakcija sa mišem — klikovi i pozicija kursora