Dobrodošli u Space Pinball! Ova igra je razvijena u Pythonu koristeći popularni modul Pygame. Pre nego što započnete, uverite se da imate instaliran Python i Pygame, i da su parametri prilagođeni vašoj rezoluciji.
- Instalirajte Python (preporučena verzija: 3.11 ili novija)
- Instalirajte Pygame:
pip install pygame - Podesite parametre igre prema svojoj rezoluciji
Space Pinball pruža mehaničko iskustvo 2D flipera s dodatkom svemirskih elemenata. Koristite leve i desne strelice za pomeranje krilaca, a Space taster za ispaljivanje kuglice. Osvojite poene tako što ćete pogoditi različite oblike:
- 30 poena za planete
- 10 poena za trapezoide
- 60 poena za sestouglove
Cilj je sakupiti što više poena i sprečiti kuglicu da padne dole.
Ojlerove jednačine koriste se za modeliranje rotacije i translacije kuglice. Ovaj matematički pristup omogućava nam precizno praćenje kretanja kuglice u dvodimenzionalnom prostoru.
Rotacija loptice zavisi od trenutne translacione brzine i pravca odbijanja od prepreka. Ovo se postiže primenom trigonometrijskih funkcija i vektorskih operacija. Dinamička rotacija doprinosi realističnosti i dinamici igre.
Gravitaciono ubrzanje zavisi od nagiba table, dok sila gravitacije zavisi od gravitacionog ubrzanja i mase loptice. Ovakav pristup omogućava da gravitacija postane faktor koji utiče na kretanje loptice u igri, stvarajući dodatni izazov.
Na početku igre, korisnik zadaje početnu silu koja ispaljuje lopticu uvis. Podešavanje ove sile postavlja ton za čitavu igru, gde precizno doziranje snage utiče na trajanje i visinu kretanja loptice.
Separating Axis Theorem je algoritam za detekciju kolizija između poligona. Korišćenjem SAT-a, možemo precizno odrediti da li se dva objekta presecaju. Ovaj algoritam koristi se za detekciju kolizija sa poligonima u igri.
Određuje se na osnovu razdaljine pozicije centra loptice od linije. Vektor odbijanja dobija se na osnovu vektora upada, koristeći refleksiju kako bi se simuliralo odbijanje od prepreke.
Implementirana je koristeći geometrijske metode poput udaljenosti između tačaka. Ovo osigurava precizno detektovanje sudara sa krugovima u igri.
Igra je inspirisana svemirom, koristeći Space elemente za stvaranje jedinstvenog vizuelnog iskustva. Planete, zvezde i kosmički pejzaž dodaju šarm i originalnost fliperu.
🌌 Spremite se za kosmičko putovanje kroz vasionu flipera! 🚀
Uživajte u igri i osvojite najviše poena u svemirskom fliperu! 🌠
Autori - Studenti sa smera računarstvo i automatika:
- Teodora Bečejac RA37/2021
- Nataša Radmilović RA20/2021