Skocz do zawartości

[3D] Krawędzie


ALT

Rekomendowane odpowiedzi

Czy mógłby mi ktoś napisać kod który by sprawdzał czy krawędź dolna (na pozycji t_Z) i krawędź górna (zmienna t_Zz) kolidiuje

z inną krawędzią dolną lub górną ? Tzn. najprostszy system kolizji sześcianu, bo mi nie wychodziło.

Odnośnik do komentarza
Udostępnij na innych stronach

Nie wiem czy dobrze przerobiłem (t_z to pozycja Z, a t_h to wysokość obiektu)

GML
//argument0 - szerokosc obiektu z kolizja

//argument1 - dlugosc obiektu z kolizja

return(x+16 > other.x+argument0 &&

x < other.x+argument0 &&

y+16 > other.y &&

y < other.y+argument1 &&

t_z+t_h > other.t_z &&

t_z < other.t_z+other.t_h);

Odnośnik do komentarza
Udostępnij na innych stronach

aabbtoaabb.png

Masz obrazek i musisz mieć min1,2 i max 1,2.

 

Skrypt powinien wyglądać tak:

GML
return(maxX1 > minX2 &&

minX1 < maxX2 &&

maxY1 > minY2 &&

minY1 < maxY2 &&

maxZ1 > minZ2 &&

minZ1 < maxZ2);

Obliczenie min1,2 i max1,2 jest zadaniem dla Ciebie. ( z tego co podałeś to jakoś nie za bardzo mogę zakapować o co chodzi).

Odnośnik do komentarza
Udostępnij na innych stronach

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

Jedynie 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ę poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...