Skocz do zawartości
  • 0
MaxGaming

Ustalenie kierunku bezkolizyjnego

Pytanie

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

1 odpowiedź na to pytanie

Rekomendowane odpowiedzi

  • 0

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ę.

×