www.pudn.com > OPENGL TEST 3.1.rar > 5DG_Window.h
#ifndef _5DG_WINDOW_H #define _5DG_WINDOW_H #include// Windows的头文件 #include // OpenGL32库的头文件 #include // Glu32库的头文件 #define WM_TOGGLEFULLSCREEN (WM_USER + 1) // 定义全屏/窗口模式切换消息 #define TITLE "5DG'S OpenGL List" // 定义窗口标题 #define CLASSNAME "5DG_OPENGL" // 定义窗口类名 #define WIDTH 640 // 定义窗口宽度 #define HEIGHT 480 // 定义窗口高度 #define BPP 16 // 定义每象素的位数 // 在此处定义与窗口相关的结构体: typedef struct { // 定义处理键盘的结构体 BOOL keyDown [256]; // 存储键盘按键状态的数组 } Keys; typedef struct { // 定义存储应用程序实例的结构体 HINSTANCE hInstance; // 应用程序实例 const char* className; // 应用程序类名 } Application; typedef struct { // 定义初始窗口所需信息 Application* application; // 所属的应用程序 char* title; // 窗口标题 int width; // 窗口宽度 int height; // 窗口高度 int bitsPerPixel; // 每像素的位数 BOOL isFullScreen; // 是否全屏 } GL_WindowInit; typedef struct { // 定义窗口结构体 Keys* keys; // 窗口的键盘 HWND hWnd; // 窗口句柄 HDC hDC; // 设备描述表 HGLRC hRC; // 绘制描述表 GL_WindowInit init; // Window初始化信息的结构体 BOOL isVisible; // 窗口是否处于活动态 } GL_Window; static BOOL g_isProgramLooping; static BOOL g_createFullScreen; // 此代码模块中包含的函数的前向声明: void TerminateApplication (GL_Window* window); // 结束程序 BOOL Initialize(GL_Window* window, Keys* keys); // 设置你绘制前的初始化值 void DrawSceneGL(void); // 在这里完成场景的绘制 void Update(void); // 在此处更新对消息的动作 void Deinitialize(void); // 在此处做退出前扫尾工作 #endif // _5DG_WINDOW_H