5DG'S OpenGL学习01--简单框架代码

OpenGL窗口的十个属性:

 

HINSTANCE    hInstance        应用程序实例

const char    *ClassName      窗口类名

 

HWND            hWnd               窗口句柄

HDC               hDC                  设备描述表

HGLRC           hRC                   绘制描述表

 

char             *Title                  窗口标题

int                  Width               窗口宽度

int                  Height              窗口高度

 

int                  BitsPerPixel      每像素的位数

bool               FullScreen         是否全屏

 

***********************************************

 

注册窗口类时WNDCLASSEX的style应设为

CS_HREDRAW | CS_VREDRAW | CS_OWNDC

 

***********************************************

 

创建窗口CreateWindow

WindowStyle

全屏:WS_OVERLAPPEDWINDOW

窗口:WS_OVERLAPPEDWINDOW | WS_POPUP

WindowExStyle

全屏:WS_EX_APPWINDOW

窗口:WS_EX_APPWINDOW | WS_EX_TOPMOST

 

***********************************************

 

像素格式描述符的设置

IXELFORMATDESCRIPTOR pfd =          

{
  sizeof(PIXELFORMATDESCRIPTOR),         // 像素的尺寸
  1,                // 版本号
  PFD_DRAW_TO_WINDOW |           // pfd必须支持窗口绘制
  PFD_SUPPORT_OPENGL |           // pfd必须支持OpenGL
  PFD_DOUBLEBUFFER,            // pfd必须支持双缓存
  PFD_TYPE_RGBA,             // 像素格式为RGBA
  BitsPerPixel,          // 设置颜色深度
  0, 0, 0, 0, 0, 0,            // 忽略颜色位数
  0,                // 无Alpha缓存
  0,                // 忽略偏移位
  0,                // 无累积缓存
  0, 0, 0, 0,              // 忽略累积缓存位
  16,                // 深度缓存为16位
  0,                // 无模板缓存
  0,                // 无辅助缓存
  PFD_MAIN_PLANE,             // 主要绘制层
  0,                // 保留位
  0, 0, 0               // 忽略层遮罩
 };

 

***********************************************

 

若全屏须调用ChangeScreenResolution

 

***********************************************

你可能感兴趣的:(OpenGL,框架)