carollo Opublikowano 26 Października 2008 Udostępnij Opublikowano 26 Października 2008 Witam Otóż chcę zrobić view_angle w grze platformowej (pamietam, że był taki przykład, ale w widoku z góry). I tak, żeby grawitacja była zawsze w dół obracanego viewa. Np. grawitacja jest w dół, a po obrocie viewa grawitacja nadal jest w dół (tylko, że w dół viewa) Mam nadzieję, że mnie zrozumieliście. Ja napisałem już taki jeden kod, lecz na początku nie działał view_angle, później po obrocie albo grawitacja była nadal w tą samą stronę, albo postać się zacinała. :crying: Niestety kod był taki do ..., że go wywaliłem. Nawet poprawienie go nic by nie zdziałało (muszę napisać wszystko od początku) :sp_ike: Z góry dzięki :thumbsup: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Dawidds Opublikowano 26 Października 2008 Udostępnij Opublikowano 26 Października 2008 Zacznijmy od tego że robić taką fizykę na GM'owej grawitacji to szaleństwo :P Napisz se własną, bo nawet, jak bohaterem będzie kulka, to i tak obiekt będzie się dziwnie zachowywał... Kąt viewa pobierasz przez view_angle, grawitacja to będzie GML gravity_direction = view_angle[view_current]+90; //Lub -90, z rana nie chce mi się myśleć...;P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Tymon Opublikowano 26 Października 2008 Udostępnij Opublikowano 26 Października 2008 W takim wypadku jestem szaleńcem. :) Ogólnie jeśli chodzi o coś takiego to dochodzi sporo kodu z ruchem po nieregularnym podłożu. Więc, albo się ograniczasz do kątów prostych, albo kombinuj chłopcze. =) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
carollo Opublikowano 26 Października 2008 Autor Udostępnij Opublikowano 26 Października 2008 chodzi mi o kąty proste... (zapomniałem napisać :rolleyes: ) wtedy robiłem chyba coś w takim stylu: GML if keyboard_check(ord('A')) { view_angle += 90; gravity_direction -= 90; } To był kod na obracanie viewem, i jeszcze coś takiego: GML if gravity_direction = -90 {gravity_direction = 270} else if gravity_direction = 360 {gravity_direction = 0} aby po pewnym czasie gravity_direction nie wynosiło 450 :jezor: niestety nie działa(ło) //usunąłem ten kod przecież Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Tymon Opublikowano 26 Października 2008 Udostępnij Opublikowano 26 Października 2008 Dla uproszczenia dodam: GML gravity_direction = ( gravity_direction + 360 ) mod 360;a GM i tak chyba wszystko trzyma w 360 stopniach. 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ę