FanXX Opublikowano 4 Maja 2012 Udostępnij Opublikowano 4 Maja 2012 Witajcie chciałbym was prosić o drobną rzecz, a mianowicie mam problem z ustawieniem kamery która porusza się w pionie. Oto kod na poziom: GML var sw; sw=display_get_width()/2; direction += (sw-display_mouse_get_x())/188; // ruch poziomy dla kamery</span></span> a tak wyglądał kod na pion, który działa tak: wezme myszkę w góre obraz przesuwa się w lewo a dół to prawo GML var sw,sw1; sw1=display_get_height()/2; direction += (sw1-display_mouse_get_y())/188; // ruch poziomy dla kamery</span></span> To co wiem to bardzo przeszkadza te direction += tylko nie mam pojęcia czym zastąpić i moją prośbą jest czy ktoś mógłby mi podać skrypt na podstawie tego pierwszego na poziom który działa góra \ dół. Serdecznie dzieki za pomocne posty Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PoxiPol Opublikowano 4 Maja 2012 Udostępnij Opublikowano 4 Maja 2012 Direction? Moze d3d_point_camera, czy cos takiego bylo, kazesz kamerze patrzec na niewidzialny obiekt, ktory sie porusza wlasnie z myszka. Ledwo rozumiem twoj kod. To w ogole dziala? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
FanXX Opublikowano 4 Maja 2012 Autor Udostępnij Opublikowano 4 Maja 2012 Ledwo rozumiem twoj kod. To w ogole dziala? Jeśli chodzi o obracanie w direction w poziom to działa ;p tylko szukam tzw "przekształcania kodu na pion" Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 4 Maja 2012 Udostępnij Opublikowano 4 Maja 2012 Musisz mieć 2 zmienne od kątów. Na rysunku są to kąty Psi i Teta. Jeden już masz ( direction ) teraz potrzebujesz nowej zmiennej i uwzględnić ją w kodzie na projekcję kamery. Pokaż kod na projekcję. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
FanXX Opublikowano 4 Maja 2012 Autor Udostępnij Opublikowano 4 Maja 2012 Create GML { global.camx = x; global.camy = y; global.camsin = sin(direction*pi/180); global.camcos = cos(direction*pi/180); } { friction = 0.2; d3d_start(); d3d_set_hidden(true); d3d_set_lighting(false); d3d_set_culling(false); d3d_set_fog(true,c_black,10,400); texture_set_interpolation(true); } zspeed = 0 global.bron = false moge = true End Step GML { global.camx = x; global.camy = y; global.camsin = sin(direction*pi/180); global.camcos = cos(direction*pi/180); } Draw GML { d3d_set_projection(x,y,10, x+cos(direction*pi/180),y-sin(direction*pi/180),10, 0,0,1); draw_set_alpha(1); draw_set_color(c_white); } Czy to to? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 4 Maja 2012 Udostępnij Opublikowano 4 Maja 2012 Spróbuj: GML var sw,sw1; sw1=display_get_height()/2; direction2 += (sw1-display_mouse_get_y())/188; d3d_set_projection(x,y,10, x+cos(direction*pi/180),y-sin(direction*pi/180),10 + tan( -direction2 * pi/180 ), 0,0,1); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
FanXX Opublikowano 4 Maja 2012 Autor Udostępnij Opublikowano 4 Maja 2012 var sw,sw1; sw1=display_get_height()/2; direction2 += (sw1-display_mouse_get_y())/188; d3d_set_projection(x,y,10, x+cos(direction*pi/180),y-sin(direction*pi/180),10 + tan( -direction2 * pi/180 ), 0,0,1); Ten kod ma znajdować się w Step? Bo jeśli tak to obraz dalej działa tylko lewo \ prawo. Spóbuje dodać do Begin bądź End step i zobacze 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ę