• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[C++][SFML] Okodowanie kolizji zombie-zombie

Object Storage Arubacloud
0 głosów
289 wizyt
pytanie zadane 25 grudnia 2015 w C i C++ przez pietrzakacper Mądrala (7,480 p.)
Witam!

Piszę grę zombie z widokiem top down 2D. Efekt końcowy ma wyglądać tak, że gracz ma przetrwać nadchodzące fale zombie.

Moim problemem jest to, że nie wiem jak napisać zachowanie się zombie w przypadku kolizji z innym. Samo wykrycie zombie ,jako, że jest kwadratem tak samo jak gracz xD jest trywialne ale nie mam pojęcia co dalej.

Proszę również o sugestie odnośnie sposobu poruszania się zombie jaki wykorzystałem oraz generalną konstruktywną opinie kodu ;)

Tutaj kod:

http://www82.zippyshare.com/v/pQrr18Mi/file.html

A tu skompilowana apka pod Windows 64 bit:

LPM - strzał       PPM - Wygenerowanie zombie na pozycji kursora    WSAD - ruch

http://www82.zippyshare.com/v/wJ1y6yef/file.html

Z góry dziękuje wszystkim których też naszło na siedzenie przy kodzie w Święta :)

2 odpowiedzi

+1 głos
odpowiedź 25 grudnia 2015 przez criss Mędrzec (172,590 p.)
wybrane 25 grudnia 2015 przez pietrzakacper
 
Najlepsza

Zamiast okodowania kolizji, możesz okodować jakiś prosty system AI który będzie dbał o zachowanie od siebie jakiejś odległości. Podejrzewam, że będzie trudniej niż to brzmi, ale o to chodzi :D Nauczysz się czegoś. Coś mi się wydaje, że też się zabiore za robienie czegoś takiego. 

Tutaj masz troche info czym się można sugerować tworząc coś takiego: http://www.red3d.com/cwr/boids/
I może inspiracje: https://youtu.be/dM1_ku4ayC8

Same kolizje nie wiem jak miałyby wyglądać, żeby to wyglądało sensownie (po prstu nie wiem co zombie miałyby robić), dlatego myśle, że to jest najlepszy pomysł.

Btw. jeśli już piszesz kolizje, zrób sobie jakąś klase-interfejs Collideable z której będą dziedziczyć klasy mogące kolidować. Będzie ładniej, przjrzyściej i bardziej pro.

Btw. po co przechowujesz pozycje gracza ze 100 ostatnich klatek? Korzystasz tylko z indeksu 0 z tego co widze. Btw. zobacz std::deque. Ten kontener ma metode pop_front - przydałaby ci się :D

 

komentarz 25 grudnia 2015 przez pietrzakacper Mądrala (7,480 p.)
Dzięki, na pierwszy rzut oka mam wrażenie, że robienie tego AI trochę mnie przerasta ale w takim razie mam kolejny długoterminowy cel.

Te 100 klatek to taka pozostałość po tym jak starałem się wyczuć ile zombie powienien się "spóźniać" ale teraz jest bezużyteczne, już wywalam.

Faktycznie pop_front się przyda :)
0 głosów
odpowiedź 16 stycznia 2016 przez pietrzakacper Mądrala (7,480 p.)

Jako, że forum to zostało stworzone z myślą o przyszłych przyszłych pokoleniach szukających odpowiedzi na swoje problemy, załączam przydatny link który wyjaśnia algorytm robiący całą robotą przy kolizjach niezależnych od gracza jednostek. Ja do swoich potrzeb potrzebowałem tylko zaimplementować drugą zasadę algorytmu. 

http://www.kfish.org/boids/pseudocode.html

Podobne pytania

0 głosów
1 odpowiedź 226 wizyt
pytanie zadane 27 sierpnia 2017 w C i C++ przez Artur Koniec Gaduła (3,670 p.)
+7 głosów
6 odpowiedzi 676 wizyt
pytanie zadane 17 kwietnia 2016 w Nasze projekty przez Paweł Głomski Obywatel (1,650 p.)
+21 głosów
6 odpowiedzi 1,280 wizyt
pytanie zadane 5 lutego 2016 w Nasze projekty przez pietrzakacper Mądrala (7,480 p.)

92,580 zapytań

141,433 odpowiedzi

319,665 komentarzy

61,966 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...