www.pudn.com > Map.GL.FPS.zip > main.h
#ifndef _MAIN_H #define _MAIN_H #include#include #include #include // Header File For The OpenGL32 Library #include // Header File For The GLu32 Library #include /////// * /////////// * /////////// * NEW * /////// * /////////// * /////////// * #include "Terrain.h" // Include our header file for our Terrain.cpp // This is our basic 3D point/vector class struct CVector3 { public: // A default constructor CVector3() {} // This is our constructor that allows us to initialize our data upon creating an instance CVector3(float X, float Y, float Z) { x = X; y = Y; z = Z; } // Here we overload the + operator so we can add vectors together CVector3 operator+(CVector3 vVector) { // Return the added vectors result. return CVector3(vVector.x + x, vVector.y + y, vVector.z + z); } // Here we overload the - operator so we can subtract vectors CVector3 operator-(CVector3 vVector) { // Return the subtracted vectors result return CVector3(x - vVector.x, y - vVector.y, z - vVector.z); } // Here we overload the * operator so we can multiply by scalars CVector3 operator*(float num) { // Return the scaled vector return CVector3(x * num, y * num, z * num); } // Here we overload the / operator so we can divide by a scalar CVector3 operator/(float num) { // Return the scale vector return CVector3(x / num, y / num, z / num); } float x, y, z; }; /////// * /////////// * /////////// * NEW * /////// * /////////// * /////////// * #define SCREEN_WIDTH 800 // We want our screen width 800 pixels #define SCREEN_HEIGHT 600 // We want our screen height 600 pixels #define SCREEN_DEPTH 16 // We want 16 bits per pixel extern bool g_bFullScreen; // Set full screen as default extern HWND g_hWnd; // This is the handle for the window extern RECT g_rRect; // This holds the window dimensions extern HDC g_hDC; // General HDC - (handle to device context) extern HGLRC g_hRC; // General OpenGL_DC - Our Rendering Context for OpenGL extern HINSTANCE g_hInstance; // This holds our window hInstance // This is our MAIN() for windows int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hprev, PSTR cmdline, int ishow); // The window proc which handles all of window's messages. LRESULT CALLBACK WinProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); // This controls our main program loop WPARAM MainLoop(); // This changes the screen to full screen mode void ChangeToFullScreen(); // This is our own function that makes creating a window modular and easy HWND CreateMyWindow(LPSTR strWindowName, int width, int height, DWORD dwStyle, bool bFullScreen, HINSTANCE hInstance); // This allows us to configure our window for OpenGL and backbuffered bool bSetupPixelFormat(HDC hdc); // This inits our screen translations and projections void SizeOpenGLScreen(int width, int height); // This sets up OpenGL void InitializeOpenGL(int width, int height); // This initializes the whole program void Init(HWND hWnd); // This draws everything to the screen void RenderScene(); // This frees all our memory in our program void DeInit(); #endif ///////////////////////////////////////////////////////////////////////////////// // // * QUICK NOTES * // // We added the CVector3 class to this file so we could use the camera class. // We also include "Terrain.h". // // // Ben Humphrey (DigiBen) // Game Programmer // DigiBen@GameTutorials.com // Co-Web Host of www.GameTutorials.com // //