
//this shows a brick wall, it looks warped cuz one of the z coords is not
//"flat" to the screen.

#include <allegro.h>

BITMAP *bmp;

PALETTE pal;

V3D upperleft;
V3D upperright;
V3D lowerleft;
V3D lowerright;

int count;

char filename[] = "brick.pcx";

int main(void)
{
allegro_init();

install_keyboard();

    if (set_gfx_mode (GFX_AUTODETECT, 640, 480, 0, 0) != 0)
    {
      printf ("error setting SVGA 640x480x256\n");
      return 0;
    }

bmp=load_bitmap(filename,pal);

if(!bmp)
  {
   printf("\ncouldn't load file");
   return 0;
  }

upperleft.x = 10 * 0x10000;
upperright.x = 310 * 0x10000;
lowerright.x = 210 * 0x10000;
lowerleft.x = 110 * 0x10000;

upperleft.y = 10 * 0x10000;
upperright.y = 10 * 0x10000;
lowerright.y = 310 * 0x10000;
lowerleft.y = 310 * 0x10000;

upperleft.z = 50 * 0x10000;
upperright.z = 50 * 0x10000;
lowerright.z = 150 * 0x10000;
lowerleft.z = 150 * 0x10000;

upperleft.u = 0 * 0x10000;
upperright.u = 127 * 0x10000;
lowerright.u = 127 * 0x10000;
lowerleft.u = 0 * 0x10000;

upperleft.v = 0 * 0x10000;
upperright.v = 0 * 0x10000;
lowerright.v = 127 * 0x10000;
lowerleft.v = 127 * 0x10000;


//polygon3d(screen,POLYTYPE_ATEX,bmp,3,corners);

triangle3d(screen,POLYTYPE_PTEX,bmp,&upperleft,&upperright,&lowerright);
triangle3d(screen,POLYTYPE_PTEX,bmp,&upperleft,&lowerright,&lowerleft);

 readkey();


 destroy_bitmap(bmp);

return 0;


}
END_OF_MAIN();
