Exigo Opublikowano 22 Września 2008 Udostępnij Opublikowano 22 Września 2008 Da się jakoś transformować obiekt 3d?... mam na myśli model. Po prostu tak jakoś 'obrócić', hm... coś jak image_angle, ale w 3d. :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Harv Opublikowano 22 Września 2008 Udostępnij Opublikowano 22 Września 2008 GML d3d_transform_set_rotation_x(angle) Sets the transformation to a rotation around the x-axis with the indicated amount. d3d_transform_set_rotation_y(angle) Sets the transformation to a rotation around the y-axis with the indicated amount. d3d_transform_set_rotation_z(angle) Sets the transformation to a rotation around the z-axis with the indicated amount. Dokumentacja. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Driger Opublikowano 22 Września 2008 Udostępnij Opublikowano 22 Września 2008 http://64digits.com/games/index.php?cmd=vi...ame&id=5027 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Exigo Opublikowano 22 Września 2008 Autor Udostępnij Opublikowano 22 Września 2008 @Harv: Czytałem dokumentacje, i próbowałem z tym... no ale nie kręciło obiektem, lecz całym ekranem. ;d Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LionX Dagger Opublikowano 22 Września 2008 Udostępnij Opublikowano 22 Września 2008 @Harv: Czytałem dokumentacje, i próbowałem z tym... no ale nie kręciło obiektem, lecz całym ekranem. ;d bo na końcu kodu musisz dać : d3d_transform_set_identity() Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Exigo Opublikowano 23 Września 2008 Autor Udostępnij Opublikowano 23 Września 2008 Mam tak: d3d_draw_block(blablabla); d3d_transform_set_rotation_x(wartość); d3d_transform_set_identity(); No i niestety niczym nie kręci. :unsure: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 23 Września 2008 Udostępnij Opublikowano 23 Września 2008 d3d_transform_set_identity(); d3d_transform_set_rotation_x(15); d3d_transform_set_translate(x,y,z); d3d_draw_block(blablabla); d3d_transform_set_identity(); Voila :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Exigo Opublikowano 23 Września 2008 Autor Udostępnij Opublikowano 23 Września 2008 Hmm, powiedzmy że jest ok, ale dziwadła się dzieją. Bowiem tak: Wiecie o tzw. współrzędnych na roomie?.. te X i Y. No i tak... jeśli obiekt (ten klocek) odsunę od punktu x=0 i y=0 na jakąś odległość, to jakoś dziwnie "lata".. jakby miał "środek" daleko od siebie.. O_o Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LionX Dagger Opublikowano 23 Września 2008 Udostępnij Opublikowano 23 Września 2008 d3d_transform_set_identity(); d3d_transform_set_rotation_x(wartość); d3d_transform_set_translate(x,y,z); d3d_draw_block(10,10,10,-10,-10,-10,textura,1,1);// wartości obiektów 3d powinny być bez x i y i środek będziesz miał na środku d3d_transform_set_identity(); w zależności jak ustawisz wartości obiektu "d3d_draw_block();" środek obrotu i w ogóle punktu możesz zmieniać zgaduje ze wartości mosz pokićkne Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Exigo Opublikowano 23 Września 2008 Autor Udostępnij Opublikowano 23 Września 2008 Mam coś takiego: Create Event: execute code: angle = 0; Step Event: execute code: if keyboard_check(vk_left) {angle -= 1;} if keyboard_check(vk_right) {angle += 1;} Draw Event: execute code: d3d_transform_set_identity(); d3d_transform_add_rotation_x(angle); d3d_transform_set_translation(0,0,0); d3d_draw_block(x+sinus,y,0,x+5+sinus,y+5,5,sprite_get_texture(tex_statek,1),1,1) ; d3d_transform_set_identity(); I nie działa, znaczy... nie "kręci". Poprawcie, to jakoś się połapię, a tak to będziemy błądzić. :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LionX Dagger Opublikowano 23 Września 2008 Udostępnij Opublikowano 23 Września 2008 Mam coś takiego: Create Event: execute code: angle = 0; Step Event: execute code: if keyboard_check(vk_left) {angle -= 1;} if keyboard_check(vk_right) {angle += 1;} Draw Event: execute code: d3d_transform_set_identity(); d3d_transform_add_rotation_x(angle); d3d_transform_set_translation(0,0,0); d3d_draw_block(x+sinus,y,0,x+5+sinus,y+5,5,sprite_get_texture(tex_statek,1),1,1) ; d3d_transform_set_identity(); I nie działa, znaczy... nie "kręci". Poprawcie, to jakoś się połapię, a tak to będziemy błądzić. :P mówiłem że masz pokićkane wartości jak już to Draw Event: execute code: d3d_transform_set_identity(); d3d_transform_add_rotation_x(angle); d3d_transform_add_translation(x,y,2.5); // tu był błąd @ down down i tu też już poprawiłem d3d_draw_block(2.5,2.5,2.5,-2.5,-2.5,-2.5,sprite_get_texture(tex_statek,1),1,1); // i tu był błąd teraz masz centralnie na środku ustawiony punkt obrotu d3d_transform_set_identity(); Edit : ups jeden minus zjadłem, poprawione Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Exigo Opublikowano 23 Września 2008 Autor Udostępnij Opublikowano 23 Września 2008 Nadal się nie rusza. :blink: PS: Poprawiłem minusa jak by co. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LionX Dagger Opublikowano 23 Września 2008 Udostępnij Opublikowano 23 Września 2008 Nadal się nie rusza. :blink: PS: Poprawiłem minusa jak by co. hmm to nie wiem , musiał bym zobaczyć plik , to co dałem powinno działać albo daj mi sekundę ja zaraz zrobię Mam d3d_transform_add_translation(x,y,2.5); // tu powinno być add a nie set Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Exigo Opublikowano 23 Września 2008 Autor Udostępnij Opublikowano 23 Września 2008 Yaaaay!!! Działa! A więc, dziękuję za pomoc. :P 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ę