D3DMAIN.H
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:2k
源码类别:

Windows编程

开发平台:

Visual C++

  1. /*
  2.  *  Copyright (C) 1995, 1996 Microsoft Corporation. All Rights Reserved.
  3.  *
  4.  *  File: d3dmain.h
  5.  *
  6.  */
  7. #ifndef __D3DMAIN_H__
  8. #define __D3DMAIN_H__
  9. #include <windows.h>
  10. #include <windowsx.h>
  11. #include <stdio.h>
  12. #include <string.h>
  13. #include <time.h>
  14. #include <search.h>
  15. #include <ddraw.h>
  16. #include <d3d.h>
  17. #include "d3dapp.h"     /* prototypes for D3D helper functions */
  18. #include "d3dres.h"     /* defines constants used in d3dmain.rc */
  19. #include "d3ddemo.h"     /* prototypes for functions to communicate with
  20.        each sample */
  21. #define START_WIN_SIZE 320  /* initial size of the window */
  22. #ifdef __cplusplus
  23. extern "C" {
  24. #endif
  25. typedef struct tagd3dmainglobals {
  26.     HWND hWndMain;     /* application window handle */
  27.     HINSTANCE hInstApp;     /* application instance for dialog boxes */
  28.     D3DAppRenderState rstate; /* struct describing the current render state */
  29.     BOOL bSingleStepMode;  /* render one frame at a time */
  30.     BOOL bDrawAFrame;  /* render on this pass of the main loop */
  31.     BOOL bClearsOn;  /* clear the back and z-buffer each frame */
  32.     BOOL bShowFrameRate;  /* show the frame rate at the top */
  33.     BOOL bShowInfo;  /* show window information at the bottom */
  34.     BOOL bResizingDisabled;  /* do not allow resizing */
  35.     BOOL bResized; /* the window has resized or some other drastic change, the
  36.                       entire client area should be cleared */
  37.     BOOL bQuit;    /* program is about to terminate */
  38.     LPDIRECTDRAWSURFACE lpFrameRateBuffer; /* frame rate surface */
  39.     LPDIRECTDRAWSURFACE lpInfoBuffer;    /* window info surface */
  40. } d3dmainglobals;
  41. void __cdecl Msg( LPSTR fmt, ... );
  42. /*
  43.  * STATS.CPP FUNCTION PROTOTYPES
  44.  */
  45. BOOL InitFontAndTextBuffers(void);
  46. void ReleaseFontAndTextBuffers(void);
  47. BOOL WriteInfoBuffer(void);
  48. BOOL WriteFrameRateBuffer(float fps, long tps);
  49. void ResetFrameRate(void);
  50. BOOL CalculateFrameRate(void);
  51. BOOL DisplayFrameRate(int* count, LPD3DRECT lpExtents );
  52. #ifdef __cplusplus
  53. };
  54. #endif
  55. #endif // __D3DMAIN_H__