allegro - ładowanie bitmapy

0

Siemanko przerabiam sobie kurs Allegro i zatrzymałem się przy ładowaniu bitmap. Mam taki kod:

#include <allegro.h>

int main(int argc, const char *argv[])
{
    allegro_init();
    install_keyboard();
    set_color_depth( 32 );
    set_gfx_mode( GFX_AUTODETECT_WINDOWED, 800, 600, 0, 0 );
    clear_to_color( screen, makecol( 128, 128, 128 ) );
    textout_ex( screen, font, "Witaj w Allegro !", 20, 20, makecol( 132, 0, 255 ), -1 );

    BITMAP * mario = NULL;

      mario = load_bmp( "mario.bmp", default_pallete );
      if(!mario)
      {
          set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 );
          allegro_message( "Nie moge zaladowac obrazku: mario");
          allegro_exit();
          return 0;
      }

      //wyswietlenie obrazka
      blit(mario, screen, 0, 0, 100, 100, mario->w, mario->h);
      //znieszczenie tej bitmapy
      destroy_bitmap(mario);


    readkey();
    allegro_exit();

  return 0;
}
END_OF_MAIN();
 

Oczywiście obrazek jest w formie bitmapy o tej samej nazwie w katalogu z plikiem. Największy problem jest w tym, iż nie mogę włączyć zakładki Logs & Others (nawet po przeinstalowaniu CB) i nie wiem czego on się czepia :D. Czerwony kwadracik pojawia się w linii z:

mario = load_bmp( "mario.bmp", default_pallete );

0

default_palette powinno być

0

Haha dzięki teraz prawie działa. Twierdzi iż nie można załadować obrazka :s

@Edit: dobra wszystko gra :) dzięki za odpowiedzi!

0

to najprawdopodobniej problem jest w ścieżce, nazwie lub formacie pliku

0

Pomyślałem że napisze tutaj, bo poco zakładać nowy temat? Chodzi mi o to, jak wczytać mapę? Wiem, wiem temat wałkowany milion razy ale nie mogę znaleźć źródła skąd bym coś zrozumiał. Chodzi mi o to, że gdy stworze dwuwymiarową tablicę i zainicjuję ją liczbami...to co te liczby oznaczają? To znaczy, wiem że są to numery kafelek, ale skąd program wie że to o nie mi chodzi?

0

np trzymaj tekstury w jednym pliku w jakimś ogarniętym ułożeniu (jeśli ich rozmiar jest jednakowy będzie łatwiej) i rysuj z odpowiedniej pozycji w zależności od tej liczby (możesz sobie to przyjąć jako id danego pola)

0

No dobra :D wiem jak program wraz z obiegiem pętli oblicza współrzędne, jednak skąd wie że ma tam wstawić kafelek?

1 użytkowników online, w tym zalogowanych: 0, gości: 1