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
/
misc
/
rmfull.h
< prev
next >
Wrap
C/C++ Source or Header
|
1997-07-14
|
3KB
|
88 lines
/*
* Copyright (C) 1995, 1996 Microsoft Corporation. All Rights Reserved.
*
* File: rmfull.h
*
*/
#ifndef __RMFULL_H__
#define __RMFULL_H__
#include <windows.h>
#include <windowsx.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <search.h>
#include <ddraw.h>
#include <d3d.h>
#include <direct.h>
#include <d3drmwin.h>
#include "d3dapp.h" /* prototypes for D3D helper functions */
#include "rmdemo.h" /* prototypes for functions to commumicate
with each sample */
#include "rmfullrc.h" /* defines constants used in rmfull.rc */
#define START_WIN_SIZE 320 /* initial size of the window */
#ifdef __cplusplus
extern "C" {
#endif
typedef struct tagrmfullglobals {
HWND hWndMain; /* application window handle */
HINSTANCE hInstApp; /* application instance for dialog boxes */
LPSTR lpCmdLine; /* command line parameters */
LPDIRECT3DRMDEVICE dev; /* Direct3DRM device */
LPDIRECT3DRMVIEWPORT view; /* Direct3DRM viewport through which we view
the scene */
LPDIRECT3DRMFRAME scene; /* Master frame in which others are placed */
LPDIRECT3DRMFRAME camera; /* Frame describing the users POV */
BOOL bSingleStepMode; /* render one frame at a time */
BOOL bDrawAFrame; /* render on this pass of the main loop */
BOOL bShowFrameRate; /* show the frame rate at the top */
BOOL bShowInfo; /* show window information at the bottom */
BOOL bResized; /* the window has resized or some other drastic change, the
entire client area should be cleared */
BOOL bQuit; /* program is about to terminate */
BOOL bNoTextures; /* this sample doesn't use any textures */
BOOL bConstRenderQuality; /* this sample is not constructed with
MeshBuilders and so the RenderQuality
cannot be changed */
D3DRMRENDERQUALITY RenderQuality; /* current shade mode, fill mode and
lighting state */
D3DRMTEXTUREQUALITY TextureQuality; /* current texture interpolation */
BOOL bDithering; /* is dithering on? */
BOOL bAntialiasing; /* is antialiasing on? */
int mouse_buttons; /* mouse button state */
int mouse_x; /* mouse cursor x position */
int mouse_y; /* mouse cursor y position */
int CurrDDDriver; /* Current DirectDraw driver */
int NumDDDrivers; /* Number of DirectDraw drivers */
D3DAppDDDriver DDDriver[D3DAPP_MAXDDDRIVERS]; /* DirectDraw drivers information */
LPDIRECTDRAWSURFACE lpFrameRateBuffer; /* frame rate surface */
LPDIRECTDRAWSURFACE lpInfoBuffer; /* window info surface */
} rmfullglobals;
void __cdecl Msg( LPSTR fmt, ... );
/*
* STATS.CPP FUNCTION PROTOTYPES
*/
BOOL InitFontAndTextBuffers(void);
BOOL WriteInfoBuffer(void);
BOOL WriteFrameRateBuffer(float fps, long tps);
void ResetFrameRate(void);
BOOL CalculateFrameRate();
BOOL DisplayFrameRate(int* count, LPD3DRECT lpExtents );
#ifdef __cplusplus
};
#endif
#endif // __RMFULL_H__