Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[allegro] Rotacje

Ostatnio zmodyfikowano 2011-04-30 13:03
Autor Wiadomość
aimo1
Temat założony przez niniejszego użytkownika
[allegro] Rotacje
» 2011-04-29 17:35:42
Kolejne moje pytanie lecz tym razem nie techniczne.
chodzi o obroty , jak zrobic aby obiekt obracał się wokół własnej osi?
korzystając z dokumentacji allegro bitmapa obraca się wokół środka ekranu.
proszę o odpowiedź.
ps.jeśli był taki temat prosił bym o wskazanie go
 
P-32234
DejaVu
» 2011-04-29 17:38:44
P-32235
aimo1
Temat założony przez niniejszego użytkownika
» 2011-04-29 17:45:54
właśnie o tą dokumentacje mi chodziło.
bitmapa ma się obracac ale nie wiem jak zrobic aby zmiejszyc odległośc od środka "rotacji"
tzn aby obiekt kręcił się w kółko bez przemieszczania
P-32236
McAffey
» 2011-04-29 18:15:52
jak zrobic aby obiekt obracał się wokół własnej osi?
korzystając z dokumentacji allegro bitmapa obraca się wokół środka ekranu.
Dzięki tej funkcji którą podał Ci DejaVu bitmapa obraca się wokół własnej osi, musisz mieć coś źle w kodzie, skompiluj sobie przykład z dokumentacji ;)
P-32239
aimo1
Temat założony przez niniejszego użytkownika
» 2011-04-29 18:25:19
ehh.. znowu nikt mnie nie rozumie
właśnie to zrobiłem!!!!!!
ale obrazek obraca się na około ekranu .
chodzi mi oto aby obrazek pojawił się w lewym górnym rogu a następnie się obracał pozostając tam .
a zresztą  to mam zamiar za pomocą tego animacje a takie kręcenie nic mi nie da .
 
P-32240
dmx81
» 2011-04-29 18:33:23
pokaz kod, jakim obracasz i rysujesz ten obrazek
P-32241
aimo1
Temat założony przez niniejszego użytkownika
» 2011-04-29 18:38:14
cpp
#include <allegro.h>
int main()
{
    allegro_init();
    install_keyboard();
    set_color_depth( 16 );
    set_gfx_mode( GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0 );
    install_timer();
  
    BITMAP * bufor = create_bitmap( 640, 480 );
  
    if( !bufor )
    {
        allegro_exit();
        return 0;
    }
    BITMAP * obrazek = load_bmp( "obrazek.bmp", default_palette );
    float kat = 0;
    while( !key[ KEY_ESC ] )
    {
        kat += 0.2;
      
        clear_to_color( bufor, makecol( 0, 0, 0 ) );
        rotate_sprite( bufor, obrazek, 100, 100, ftofix( kat ) ); //Przykład użycia funkcji rotate_sprite
        blit( bufor, screen, 0, 0, 0, 0, 640, 480 );
    }
  
    destroy_bitmap( obrazek );
    destroy_bitmap( bufor );
    allegro_exit();
    return 0;
}
END_OF_MAIN();
/cpp
czyli ten z waszej dokumentacji
ato co opisywałem to chciałbym aby tak działało
P-32242
Gabes
» 2011-04-29 19:57:40
pivot_sprite( bufor, obrazek, 100, 100, cx, cy, ftofix( kat ) );
.

cx,cy - punkt na obrazku o który obracasz.


P-32258
« 1 » 2
  Strona 1 z 2 Następna strona