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

Allegro - nie działa draw_sprite()

Ostatnio zmodyfikowano 2012-10-12 11:57
Autor Wiadomość
marianekA
Temat założony przez niniejszego użytkownika
Allegro - nie działa draw_sprite()
» 2012-10-12 11:34:17
Zaczynam przygodę z ruchem na ekranie ale na wstępie mam problem z funkcją draw_sprite() - nie wyświetla mi obrazka na ekranie
załączam prosty kodzik:
C/C++
#include <allegro.h>
BITMAP * klocek = NULL;
int main()
{
    allegro_init();
    install_keyboard();
    set_color_depth( 24 );
    set_gfx_mode( GFX_AUTODETECT_WINDOWED, 800, 600, 0, 0 );
    clear_to_color( screen, makecol( 10, 100, 110 ) );
    klocek = create_bitmap( 50, 50 );
    clear_to_color( klocek, makecol( 255, 0, 255 ) );
    //rysowanie klocka
    rect( klocek, 10, 10, 40, 40, makecol( 255, 0, 0 ) );
    floodfill( klocek, 1, 1, makecol( 255, 0, 0 ) );
    //rysowanie siatki poglądowej na ekranie
    int a = 20;
    for( int y = 0; y < 28; ++y )
    for( int x = 0; x < 38; ++x )
         rect( screen, a + x * a, a + y * a, a + x * a + a, a + y * a + a, 0 );
   
    masked_blit( klocek, screen, 0, 0, 100, 100, 50, 50 ); //wyświetla się 
    draw_sprite( klocek, screen, 200, 200 ); // a tu nie wyświetla się
   
    while( !key[ KEY_ESC ] );
   
    destroy_bitmap( klocek );
    allegro_exit();
    return 0;
}
END_OF_MAIN();
 Podejrzewam że rozwiązanie jak zwykle jest proste ale moje komórki ostatnio coś źle pracują.
P-66659
Łukasz123
» 2012-10-12 11:41:28
void blit ( BITMAP * source, BITMAP * dest, int source_x, int source_y, int dest_x, int dest_y, int width, int height ) ;
Możesz tego użyć zamiast draw_sprite a dlaczego nie działa tamto to ci powiem jak skończę studiować opis tej funkcji na dokumentacji allegro :p

Według dokumentacji to w masked_blit parametr screen jest drugi a pierwsze to chcesz wyświetlić a w draw_sprite odwrotnie,spróbuj odwrócić parametry
P-66660
marianekA
Temat założony przez niniejszego użytkownika
» 2012-10-12 11:57:27
Łukasz123 - miałeś rację, zamiana parametrów załatwiła sprawę i już widzę 'sprita' - dzięki ci za to.
Główkowałem kombinowałem a na to nie wpadłem...ach, nieznajomość angielskiego znowu dała znać o sobie.
Pozdrawiam Wszystkich co nie zdążyli przeczytać posta.
Problem rozwiązany i temat zamykam.

P-66661
« 1 »
  Strona 1 z 1