PDA

Visualizza la versione completa : [C++] Allegro: impossibile caricare uno sprite


Criphox
20-01-2007, 13:06
quando vado a compilare il sorgente, mi esce una finestra completamente nera senza lo sprite :cry:

Potreste dirmi per quale motivo nn viene cariato lo sprite?



#include "allegro.h"

BITMAP*buf,*sprite;
PALETTE colori;
int x;
int y;

void doppiobuffering()
{vsync();
blit(buf,screen,0,0,0,0,320,200);
clear(buf);
}
void player()
{
draw_sprite(buf,sprite,x,y);
}
int main()
{
allegro_init();
install_keyboard();
set_color_depth(32);
set_palette(colori);
set_gfx_mode(GFX_AUTODETECT,320,200,0,0);
buf = create_bitmap(320,200);
clear(buf);
sprite = load_bmp("player.bmp",colori);
x=10,y=-30;
while(!key[KEY_ESC])
{
doppiobuffering();
player();
}
destroy_bitmap(buf);
destroy_bitmap(sprite);
}
END_OF_MAIN();

Grazie in anticipo! :ciauz:

Criphox
21-01-2007, 11:02
niente? :bh:

oregon
21-01-2007, 11:32
Non ho installata la libreria ma fossi in te farei un po' di debug ...

Per esempio, hai controllato che questa linea

sprite = load_bmp("player.bmp",colori);

vada a buon fine?

Ovvero, il file viene trovato e regolarmente letto?

Criphox
21-01-2007, 11:43
riguardandomi il sorgente per bene ho visto che c'era un piccolo errore ^^

nel tutorial diceva di scrivere cos:

ix= 10;
y= -30;

lo sprite veniva caricato, ma come se si trovasse fuori dalla finestra (credo)...quindi ho cancellato il meno e funziona...


x che scemo che sono :dh: dovevo accorgermene subito che il tutorial sbagliava :dh:

ps: graze della risposta oregon :ciauz:

Loading