home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / graphics / directx / viewer / viewer.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-07-15  |  2.2 KB  |  85 lines

  1. /*==========================================================================
  2.  *
  3.  *  Copyright (C) 1995, 1996 Microsoft Corporation. All Rights Reserved.
  4.  *
  5.  *  File: viewer.h
  6.  *
  7.  ***************************************************************************/
  8.  
  9. #define MENU_FILE_ABOUT              1
  10. #define MENU_FILE_OPEN              2
  11. #define MENU_FILE_OPEN_ANIMSET            3
  12. #define MENU_FILE_OPEN_FRAME              4
  13. #define MENU_FILE_EXIT              5
  14. #define MENU_FILE_NEW_WINDOW          6
  15. #define MENU_FILE_OPEN_PMESH          7
  16.  
  17. #define MENU_EDIT_CUT            100
  18. #define MENU_EDIT_COPY            101
  19. #define MENU_EDIT_PASTE            102
  20. #define MENU_EDIT_DELETE        103
  21. #define MENU_EDIT_COLOR        104
  22. #define MENU_EDIT_BOXES            105
  23.  
  24. #define COLOR_ALPHAACCEL                711
  25. #define COLOR_ALPHA                     714
  26.  
  27. #define MENU_QUALITY_LIGHTING        200
  28. #define MENU_QUALITY_POINTS        201
  29. #define MENU_QUALITY_WIREFRAME        202
  30. #define MENU_QUALITY_SOLID        203
  31. #define MENU_QUALITY_FLAT        204
  32. #define MENU_QUALITY_GOURAUD        205
  33. #define MENU_QUALITY_PHONG        206
  34.  
  35. #define MENU_MODEL_MONO            207
  36. #define MENU_MODEL_RGB            208
  37.  
  38. #define MENU_DITHER            209
  39.  
  40. #define MENU_TEXTURE_FILTERING        210
  41.  
  42. #define MENU_LIGHT_DIRECTIONAL        301
  43. #define MENU_LIGHT_PARALLEL_POINT     302
  44. #define MENU_LIGHT_POINT        303
  45. #define MENU_LIGHT_SPOT            304
  46.  
  47. #undef RELEASE
  48. #ifdef __cplusplus
  49. #define RELEASE(x) if (x != NULL) {x->Release(); x = NULL;}
  50. #else
  51. #define RELEASE(x) if (x != NULL) {x->lpVtbl->Release(x); x = NULL;}
  52. #endif
  53.  
  54. #ifdef __cplusplus
  55. extern "C" {
  56. #endif
  57.  
  58. typedef struct _AppInfo
  59. {
  60.     LPDIRECT3DRMFRAME2 scene, camera;
  61.     LPDIRECT3DRMDEVICE dev1;
  62.     LPDIRECT3DRMDEVICE2 dev;
  63.     LPDIRECT3DRMVIEWPORT view;
  64.     D3DRMCOLORMODEL model;
  65.     LPDIRECT3DRMPROGRESSIVEMESH lpPM;
  66.     BOOL bMinimized;
  67.     HWND win;
  68. } AppInfo;
  69.  
  70. extern AppInfo* active_window;
  71.  
  72. extern LPDIRECT3DRM2 lpD3DRM;
  73. extern float gfVal;
  74.  
  75. extern void SelectPM(LPDIRECT3DRMPROGRESSIVEMESH);
  76. extern void WINAPI GetDXVersion(LPDWORD pdwDXVersion, LPDWORD pdwDXPlatform);
  77. char* OpenNewFile(HWND, const char *);
  78. int ChooseNewColor(HWND, D3DCOLOR*);
  79. LPDIRECT3DRMFRAME D3DRMLoadXAFAsFrame(const char* s);
  80. HRESULT D3DRMLoadXAFAsList(const char* s, size_t*, LPDIRECT3DRMOBJECT**);
  81.  
  82. #ifdef __cplusplus
  83. }
  84. #endif
  85.