Matrix_ Opublikowano 30 Grudnia 2013 Udostępnij Opublikowano 30 Grudnia 2013 Witam, mam pytanie otóż korzystam z obracania się w kierunku celownika: GML direction=point_direction(x,y,mouse_x,mouse_y) image_angle=direction Mój bohater wygląda [powiedzmy że tak:] Podczas obotu, po 45' jest tak: I w tedy trzeba powrócić do 0' lub 270' aby móc wyjść ze ściany.... Jak tego uniknąć ? Według mnie powinno byc to mniej więcej tak, że sprite obiektu obraca się w kwadracie, a kwadrat się nie obraca. Przez co nie było by tego problemu... [edit] Jakoś tak: Ale Problem by był z zrobieniem tego kwadratu, ciężko by było wyznaczyć najdłuższa długość i szerokość :/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Utermiko Opublikowano 30 Grudnia 2013 Udostępnij Opublikowano 30 Grudnia 2013 Ten kwadrat nazywa się AABB (Axis Aligned Bounding Box). Tutaj coś znalazłem: http://stackoverflow.com/questions/6657479...-rotated-sprite @EDIT We właściwościach sprite nawet chyba da się to ustawić. Collision mask na rectangle czy coś takiego. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Matrix_ Opublikowano 30 Grudnia 2013 Autor Udostępnij Opublikowano 30 Grudnia 2013 Ten kwadrat nazywa się AABB (Axis Aligned Bounding Box). Tutaj coś znalazłem: http://stackoverflow.com/questions/6657479...-rotated-sprite @EDIT We właściwościach sprite nawet chyba da się to ustawić. Collision mask na rectangle czy coś takiego. Niestety ta maska obraca się również z objektem. Chyba że jest coś, co tylko obraca grafikę, sam sprite, bez maski itp :/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 30 Grudnia 2013 Udostępnij Opublikowano 30 Grudnia 2013 Obracając image_angle obracasz także maską kolizyjną. Zrób sobie własną zmienną od obracania spritem i wpisz ją w draw_sprite_ext() w parametrze rot. A samo image_angle pozostaw na 0. Wyłącz precise collision checking. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Matrix_ Opublikowano 30 Grudnia 2013 Autor Udostępnij Opublikowano 30 Grudnia 2013 Obracając image_angle obracasz także maską kolizyjną. Zrób sobie własną zmienną od obracania spritem i wpisz ją w draw_sprite_ext() w parametrze rot. A samo image_angle pozostaw na 0. Wyłącz precise collision checking. Dzięki, z ta maską to wiedziałem... GML draw_sprite_ext(sprite_index,image_index,x,y,image_xscale,image_yscale,obrot,image_blend,image_alpha) image_angle nie muszę wpisywać ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 30 Grudnia 2013 Udostępnij Opublikowano 30 Grudnia 2013 No nie, po to zrobiłeś tą nową zmienną by image_angle było na 0. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kriso99 Opublikowano 30 Grudnia 2013 Udostępnij Opublikowano 30 Grudnia 2013 no tak, ale kolizja teraz nie bedzie rowna: w gore zatrzyma sie zawsze wiecej pixeli niz jak szedlbys na boki maska w topdown powinna byc okragla Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Matrix_ Opublikowano 30 Grudnia 2013 Autor Udostępnij Opublikowano 30 Grudnia 2013 no tak, ale kolizja teraz nie bedzie rowna: w gore zatrzyma sie zawsze wiecej pixeli niz jak szedlbys na boki maska w topdown powinna byc okragla Zauważyłem ten odstęp, a jak to zrobić, żeby była okrągła ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kriso99 Opublikowano 30 Grudnia 2013 Udostępnij Opublikowano 30 Grudnia 2013 dajesz nowego sprite'a jako koło i ustawiasz go jako maske, lub w tym co masz ustawiasz maske(modify mask) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Matrix_ Opublikowano 30 Grudnia 2013 Autor Udostępnij Opublikowano 30 Grudnia 2013 dajesz nowego sprite'a jako koło i ustawiasz go jako maske, lub w tym co masz ustawiasz maske(modify mask) Dobra działa, zobaczymy jak to będzie wyglądać, jak będzie las, i co chwilę drzewa... Dziękuję Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę