Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

101 lines
2.5 KiB

  1. /******************************Module*Header*******************************\
  2. * Module Name: ssopengl.h
  3. *
  4. * Global header for the 3D Flying Objects screen saver.
  5. *
  6. * Copyright (c) 1994 Microsoft Corporation
  7. *
  8. \**************************************************************************/
  9. #include "sscommon.h"
  10. // redefine PI as a double for all 3dfo code
  11. #undef PI
  12. #define PI PI_D
  13. #define PALETTE_PER_MATL 32
  14. #define PALETTE_PER_DIFF 26
  15. #define PALETTE_PER_SPEC 6
  16. #define MATL_MAX 7
  17. typedef struct strFACE {
  18. POINT3D p[4];
  19. POINT3D n[4];
  20. POINT3D fn;
  21. int idMatl;
  22. } FACE;
  23. typedef struct strMFACE {
  24. int p[4];
  25. int material;
  26. POINT3D norm;
  27. } MFACE;
  28. typedef struct strMESH {
  29. int numFaces;
  30. int numPoints;
  31. POINT3D *pts;
  32. POINT3D *norms;
  33. MFACE *faces;
  34. GLint listID;
  35. } MESH;
  36. extern BOOL bSmoothShading;
  37. extern BOOL bFalseColor;
  38. extern BOOL bColorCycle;
  39. extern float fTesselFact;
  40. extern TEXFILE gTexFile;
  41. extern BOOL gbBounce;
  42. extern MATERIAL Material[];
  43. extern int NumLights;
  44. extern void newMesh(MESH *, int numFaces, int numPts);
  45. extern void delMesh(MESH *);
  46. extern void revolveSurface(MESH *, POINT3D *curve, int steps);
  47. extern void *SaverAlloc(ULONG);
  48. extern void SaverFree(void *);
  49. // Resource constants
  50. #define IDS_SAVERNAME 1002
  51. #define IDS_FALSECOLOR 1004
  52. #define IDS_SMOOTHSHADING 1005
  53. #define IDS_OPTIONS 1007
  54. #define IDS_OBJTYPE 1008
  55. #define IDS_SCREENSAVERTITLE 1020
  56. #define IDS_LOGO 1100
  57. #define IDS_EXPLODE 1101
  58. #define IDS_RIBBON 1102
  59. #define IDS_2RIBBON 1103
  60. #define IDS_SPLASH 1104
  61. #define IDS_TWIST 1105
  62. #define IDS_FLAG 1106
  63. #define DLG_SETUP_HELP 2001
  64. #define DLG_SETUP_TYPES 2002
  65. #define DLG_SETUP_BITMAP 2003
  66. #define DLG_SETUP_FCOLOR 2004
  67. #define DLG_SETUP_SMOOTH 2005
  68. #define DLG_SETUP_CYCLE 2006
  69. #define DLG_SETUP_ABOUT 2007
  70. #define DLG_SETUP_TESSEL 2008
  71. #define DLG_SETUP_SIZE 2009
  72. #define DLG_SETUP_TEXTURE 2010
  73. #define IDC_STATIC_TESS 2011
  74. #define IDC_STATIC_TESS_MIN 2012
  75. #define IDC_STATIC_TESS_MAX 2013
  76. #define IDC_STATIC_SIZE 2014
  77. #define IDC_STATIC_SIZE_MIN 2015
  78. #define IDC_STATIC_SIZE_MAX 2016
  79. #define IDB_DEFTEX 3000
  80. #define SHELP_CONTENTS 01
  81. #define SHELP_SHAPES 02
  82. #define SHELP_PASSWORD 03
  83. #define SHELP_COLOR 04
  84. #define SHELP_MISC 05
  85. #define SHELP_OVERVIEW 06