NukeBoards - Kreatywność przede wszystkim
FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  DownloadDownload
RejestracjaRejestracja  ZalogujZaloguj

Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi
Poprzedni temat :: Następny temat
Zamknięty przez: Neoqueto
29-05-2012, 16:48
[teoria] Wyszukiwanie ścieżki
Autor Wiadomość
Dexter 
Plutonowy


Główny edytor: Construct
Drugi edytor: MMF2
Pojedynki: tak
Posty: 61

650 Prestiż
Wysłany: 29-02-2012, 00:19   [teoria] Wyszukiwanie ścieżki

Hej,
mam pytanie czysto teoretyczne - nie chodzi mi o zdarzenia, a po prostu o samą zasadę działania. Starałem się to rozpracować, ale jakoś nic mi nie przychodzi do głowy.

Powiedzcie mi na jakiej zasadzie działa AI, które tworzy ścieżkę ruchu w kierunku gracza. Co mam na myśli - mamy pomieszczenie, w którym jest gracz, dwa pomieszczenia dalej znajduje się przeciwnik, jeżeli zbliżymy się do niego wystarczająco (z tym nie ma problemu, przekątna prostokątu o bokach z różnicy współrzędnych) zaczyna podążać w naszym kierunku najbliższą drogą omijając po drodze wszystkie przeszkody i idąc w kierunku gracza.

Na tej samej zasadzie chodzą jednostki w grach RTS - klikamy w jedno miejsce, a one omijają przeszkody i zbliżają się do wskazanego punktu. Chodzi mi dokładnie o zasadę działania takiego cudu.

Mam nadzieję, że napisałem wszystko w miarę czytelnie.
Z góry dzięki za odpowiedzi.

Pozdrawiam
Dexter
_________________
Tenshi no metsuki...
 
 
     
Andrzejek98 
Plutonowy

Główny edytor: KNP
Pomógł: 3 razy
Posty: 74

1163 Prestiż
Wysłany: 29-02-2012, 00:46   

Po prostu przeciwnik podąża za nami sprawdzając czy na jego polu widzenia znajduje się jakiś obiekt do którego może dobić, jeśli tak >> omiń.

Prościej się nie da tego wyjaśnić, no chyba że na czynniki pierwsze ale to już nie moja działka ;)
 
     
Minty 
Stwórczyni
omc dr fizyki


Główny edytor: Fusion 2.5 Dev
Drugi edytor: Construct
Pojedynki: być może
Pomogła: 259 razy
Posty: 3444

33725 Prestiż
Wysłany: 29-02-2012, 11:34   

Pathfinding to nie tylko omijanie. AI robi mapę otoczenia (jako raster lub tylko węzły sieci), nadaje poszczególnym punktom wagi i potem sprawdza wszystkie drogi do celu, szukając takiej o najniższej wadze.
 
     
Fadex 
Legenda
#4; #12; #18; #20; #21; #27


Główny edytor: MMF2 Dev
Pojedynki: nie
Pomógł: 105 razy
Posty: 1773

51612 Prestiż
Wysłany: 29-02-2012, 14:29   

Są dwa typy pathfindingu. To wykorzystane w RTSach to typ wektorowy - czyli jak już wspomniane przez RXa linie i węzły, które mają za zadanie ominąć przeszkody. To drugie to typ rastrowy - czyli po prostu wyszukiwanie najkrótszej ścieżki metodą bruteforce. Teoretycznie działa wyłącznie na mapie opartej o siatkę, jednak po kilku modyfikacjach daje się je zastosować do wszystkich typów map, o ile droga nie jest za długa/sprzęt jest wystarczająco wydajny aby sprawdzić wszystkie punkty na mapie. Można też starać się optymalizować algorytm wyszukujący. Po dotarciu algorytmu do danego miejsca droga jest odtwarzana z powrotem - czyli w trakcie trwania algorytmu przechowywane są informacje jak ma poruszać się obiekt (w przypadku ruchu o siatce wystarczą 2 bity na krok - cztery kierunki)

Do obu typów wymagana jest mapa, w przypadku rastrowym wystarczy dwuwymiarowa tablica pozycji X i Y, w przypadku wektorów jest to nieco bardziej skomplikowane.
_________________
If it doesn't have to work, I can optimize any code to a runtime of zero. What's your superpower?
wat
 
 
     
Dexter 
Plutonowy


Główny edytor: Construct
Drugi edytor: MMF2
Pojedynki: tak
Posty: 61

650 Prestiż
Wysłany: 29-02-2012, 20:51   

Nie miałem pojęcia, że profesjonalnie nazywa się to 'pathfinding'. Poszperałem troszkę i znalazłem metodę A*, która wydaje się naprawdę logiczna i prosta. Do jej wykorzystania przydałyby się wielowymiarowe tablice powiązane z obiektami, ma ktoś pomysł jak przez to przebrnąć? Construct udostępnia tablicę tylko trójwymiarową, a przydałaby się większa. Najlepiej, gdyby obiekty miały swoje tablice, tak jak mają values.

Jest może jakiś plugin, który daje taką możliwość? Ostatecznie podobny plugin do MMF2?
_________________
Tenshi no metsuki...
 
 
     
Neoqueto 
Moderator
Akcelerator


Główny edytor: Fusion 2.5 Dev
Drugi edytor: MMF2
Pojedynki: być może
Skype:
Pomógł: 60 razy
Posty: 536

7971 Prestiż
Wysłany: 29-02-2012, 22:50   

Do MMF2 są to:
Pathfinding Object
Advanced Path Finding Object
A* FlashString (Flash)
_________________
Jeśli otrzymałeś pomoc - pamiętaj o przyznaniu punktu Pomógł!
 
     
Wyświetl posty z ostatnich:   
Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

PSK Cytaty Klikibaza - kopia wszystkich klików Klikipedia - encyklopedia o tworzeniu gier Discord KlikCzat Zaproszenie
Daj piniondza Wielkie Muzeum Klikowe

Powered by phpBB modified by Przemo © 2003 phpBB Group