home *** CD-ROM | disk | FTP | other *** search
/ Virtual Reality Madness / VRMAD96_ONE.ISO / virtek / libex / libex148.c < prev    next >
C/C++ Source or Header  |  1995-08-24  |  2KB  |  55 lines

  1.                                           // Example: 148 from Library Reference
  2. #include "..\3D-Ware\dddware.h"
  3. #include <stdio.h>
  4. struct {
  5.   short  col;
  6.   short  numpts;
  7.   short  x1,y1;
  8.   short  x2,y2;
  9.   short  x3,y3;
  10.   short  x4,y4;
  11. } square = { 15,4,0,0,0,0,0,0,0,0 };
  12. void DisplayColors(void);                 // Declare prototype.
  13. short main(void)
  14. {
  15.   dddInitVideo();
  16.   dddInit3d();
  17.   dddInitKeybd();
  18.   dddSetStandardPalFromIff("COLORS.LBM"); // Get the color palette from "COLORS.LBM".
  19.   dddScreenSwap();                        // Initialise the screen swapping.
  20.   dddSetPal(dddstandardpal);              // Set VGA registers from the loaded palette.
  21.   DisplayColors();                        // Display the palette we have loaded.
  22.   dddScreenSwap();
  23.   while(!dddkeycode);                     // Wait for a keypress before quitting.
  24.   dddRestoreKeybd();
  25.   dddClose3d();
  26.   dddRestoreVideo();
  27.   return 0;                               // Bye.
  28. }
  29. void DisplayColors(void)
  30. {
  31. int col,x,y;
  32. char msg[20];
  33.    col = -1;
  34.    for(y=0; y<(200-15); y+=12) {
  35.      for(x=0; x<320; x+=20) {
  36.        col = (col + 1) & 255;
  37.        square.col  = col;
  38.        square.x1  = x;
  39.        square.x2  = x+19;
  40.        square.x3  = x+19;
  41.        square.x4  = x;
  42.       square.y1  = y;
  43.       square.y2  = y;
  44.       square.y3  = y+11;
  45.       square.y4  = y+11;
  46.        dddDrawPoly((void far *)&square);  // Draw a square on the screen.
  47.        sprintf(msg,"%d",col);
  48.        dddGamePrint3(0,x+2,y+2,msg);      // Print the color number as a shadow.
  49.        dddGamePrint3(255,x+1,y+1,msg);    // Print the color number as a highlight.
  50.        dddGamePrint3(0,90+2,193+2,"PRESS ANY KEY TO EXIT.");
  51.        dddGamePrint3(255,90+1,193+1,"PRESS ANY KEY TO EXIT.");
  52.      }
  53.    }
  54. }
  55.