Allegro 5绘制更多缩放位图的奇怪行为

时间:2014-03-19 10:00:56

标签: c bitmap draw allegro allegro5

我试图用Allegro 5在C中创建一张纸牌纸牌。

void deck_printout(deck*d)
{
  int i;
  al_clear_to_color(stdcolor);
  for(i=0;i<40;i++){
     al_draw_scaled_bitmap(d->cards[i].img,
                           d->cards[i].xpos,
                           d->cards[i].ypos,
                           SWID,
                           SHEI,
                           d->cards[i].xpos,
                           d->cards[i].ypos,
                           DWID, DHEI, 0);
     //printf("%f %f\n",d->cards[i].xpos,d->cards[i].ypos);
     //al_draw_scaled_bitmap(d->cards[i].img,0,0,SWID,SHEI,0,0,DWID,DHEI,0);
     //al_draw_bitmap(d->cards[i].img,d->cards[i].xpos,d->cards[i].ypos,0);
  }
}

此功能将所有卡片都拉到显示屏上。为每张卡正确设置了xpos和ypos,SWID和SHEI为225x315,DWID和DHEI均为80x112。

printf()告诉我卡的位置没问题,al_draw_bitmap告诉我这个问题可能是由缩放引起的。

这是它的样子:

Screenshot of jumbled playing cards

0 个答案:

没有答案