home *** CD-ROM | disk | FTP | other *** search
/ Learn 3D Graphics Programming on the PC / Learn_3D_Graphics_Programming_on_the_PC_Ferraro.iso / rwdos / dknight.h < prev    next >
C/C++ Source or Header  |  1995-02-15  |  1KB  |  42 lines

  1. #ifdef DEFINE_GLOBAL
  2. #define ref
  3. #define preset(x) = x
  4. #else
  5. #define ref extern
  6. #define preset(x) /* x */
  7. #endif
  8.  
  9. typedef enum {
  10.     CAM_MAIN,
  11.     CAM_KNIGHT1,
  12.     CAM_KNIGHT2,
  13.     CAM_FLY1,
  14.     CAM_FLY2
  15. } EnCameraState;
  16.  
  17. #define CAMERA_DISTANCE CREAL(-2.2)
  18.  
  19. ref RwCamera *Camera preset(NULL);
  20. ref RwCamera *MainCamera preset(NULL);
  21. ref RwCamera *FlyCamera preset(NULL);
  22. ref RwScene *Scene preset(NULL);
  23. ref RwLight *Light preset(NULL);
  24. ref EnCameraState CameraState preset(CAM_MAIN);
  25. ref int InterActive preset(FALSE);
  26. ref RwClump *Knight1 preset(NULL);
  27. ref RwClump *Knight2 preset(NULL);
  28.  
  29. RwClump *LoadClump(char *filename);
  30. RwRaster *LoadBackdrop(char *filename);
  31. void SetCameraState(EnCameraState state);
  32. void AnimateCamera(void);
  33.  
  34. int LoadKnight(RwScene *scene);
  35. void ReactKnight(RwClump *clump, TyAnimation *a);
  36. char *RandomKnight(RwClump *clump);
  37. void SetBackdrop(RwCamera *c);
  38. void AnimateKnight(int knight, char *name);
  39. void RenderKnight(void);
  40.  
  41. #define GetRandInt(minval, maxval) (minval + (16383 + rand()*(maxval - minval))>>15)
  42.