Skocz do zawartości
MaxGaming

Ustalenie kierunku bezkolizyjnego

Rekomendowane odpowiedzi

Cześć,

jeśli zwierzę uderzy w jakiś obiekt ma zmienić kierunek na losowy, ale taki który nie spowoduje ponownej kolizji z żadną przeszkodą.

Jak to wyliczyć skutecznie i w miarę optymalnie?

Zwykłe colisson_line nie zadziała ze względu na to, że obiekt nie jest punktem i to że w linii prostej od x i y obiektu nic nie ma nie znaczy, że np nie zawadzimy bokiem.

 

@edit gra top down, z góry centralnie widok, brak fizyki tylko speed i direction

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

5c0d05db14b9b_Beztytuu.png.9a4fa955a599cb23ab79b443967c32fe.png

 

Ustal sobie jakąś promień twojego obiektu i na jego podstawie wystrzelisz 2 linie kolizji i sprawdzaj czy którakolwiek się z czymś zderzy. 

punkt ABCD obliczysz tak:

ax = x+lengthdir_x(radius, dir-90)
ay = y+lengthdir_y(radius, dir-90)

bx = x+lengthdir_x(radius, dir+90)
by = y+lengthdir_y(radius, dir+90)

cx = ax + lengthdir_x(dystans, dir)
cy = ay + lengthdir_y(dystans, dir)

dx = bx + lengthdir_x(dystans, dir)
dy = by + lengthdir_y(dystans, dir)
  

Mogłem się pomylić bo nie przetestowałem

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się tutaj.

Zaloguj się tutaj

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×