VC之OpenGL编程框架
2013-04-13 00:14
253 查看
在Windows系统下编制OpenGL程序必需首先建立Windows框架,再在Windows框架下建立OpenGL的框架。
Windows程序框架
Windows框架是我们在Windows系统下运行的程序必需的架构。Windows框架主要由三个函数构建。
● WinMain() 程序入口。程序从这里开始运行。WinMain()的功能为定义一个Windows的窗口的样式、大小等等,并建立这个窗口。
● MsgProc() 窗口回调函数。Windows程序是基于事件响应的运行机制,MsgProc()窗口回调函数在整个运行周期中随时对回调函数所定义的外部事件(鼠标移动、点击,窗口变化,键盘和其它函数发出的消息) 做出反应。
● GameLoop() 消息循环。这是利用Windows的消息机制做成的主循环函数,它被程序反复执行。它的作用是侦听消息,有消息时返回Windows的消息链,没有消息时就执行OpenGL的图形处理Render()。
OpenGL程序框架
OpenGL的基本框架由四个函数组成。
● SetupPixelFormat(HDC hDC) 检测安装OpenGL。主要设置OpenGL的参数,并测试显卡安装OpenGL的图形系统。OpenGL安装成功后就不再使用。
● init(int Width, int Height) OpenGL视口进行变换。根据Windows窗口的变化对OpenGL视口进行变换。这里的视口就是我们看到的三维世界视觉效果的窗口。OpenGL安装成功后就不再使用。
● CleanUp() 清除OpenGL的连接。在程序退出时调用,清除OpenGL的视口和图形环境。
● Render() OpenGL图形处理。这是处理OpenGL图形的关键函数,它在程序的整个程序运行时间中都在调用,它的调用周期也就是我们的屏幕刷屏周期。我们今后的所有图形显示命令都在这里给出。
Windows程序框架与OpenGL程序框架的相互关系:
● WinMain()是程序入口点,在此将定义一个Windows的窗口的样式、大小等等,并建立这个窗口。
● Windows程序是基于事件响应的,在建立窗口的命令执行中,MsgProc()窗口回调函数对建立窗口的事件消息做出反映,马上调出OpenGL框架中的SetupPixelFomat()检测机器对OpenGL的支持情况,并安装OpenGL显示接口。
● 当窗口建立成功显示时,MsgProc()窗口回调函数对窗口尺寸变化事件消息又作出反映,调出OpenGL框架中的init()对OpenGL视口进行变换调整。
● Windows窗口生成后就进入GameLoop()主循环中,在此一直调出OpenGL框架中的Render()函数进行我们需要的图形处理。
● 程序退出时,调用CleanUp()清除OpenGL的连接。
Windows程序框架
Windows框架是我们在Windows系统下运行的程序必需的架构。Windows框架主要由三个函数构建。
● WinMain() 程序入口。程序从这里开始运行。WinMain()的功能为定义一个Windows的窗口的样式、大小等等,并建立这个窗口。
● MsgProc() 窗口回调函数。Windows程序是基于事件响应的运行机制,MsgProc()窗口回调函数在整个运行周期中随时对回调函数所定义的外部事件(鼠标移动、点击,窗口变化,键盘和其它函数发出的消息) 做出反应。
● GameLoop() 消息循环。这是利用Windows的消息机制做成的主循环函数,它被程序反复执行。它的作用是侦听消息,有消息时返回Windows的消息链,没有消息时就执行OpenGL的图形处理Render()。
OpenGL程序框架
OpenGL的基本框架由四个函数组成。
● SetupPixelFormat(HDC hDC) 检测安装OpenGL。主要设置OpenGL的参数,并测试显卡安装OpenGL的图形系统。OpenGL安装成功后就不再使用。
● init(int Width, int Height) OpenGL视口进行变换。根据Windows窗口的变化对OpenGL视口进行变换。这里的视口就是我们看到的三维世界视觉效果的窗口。OpenGL安装成功后就不再使用。
● CleanUp() 清除OpenGL的连接。在程序退出时调用,清除OpenGL的视口和图形环境。
● Render() OpenGL图形处理。这是处理OpenGL图形的关键函数,它在程序的整个程序运行时间中都在调用,它的调用周期也就是我们的屏幕刷屏周期。我们今后的所有图形显示命令都在这里给出。
Windows程序框架与OpenGL程序框架的相互关系:
● WinMain()是程序入口点,在此将定义一个Windows的窗口的样式、大小等等,并建立这个窗口。
● Windows程序是基于事件响应的,在建立窗口的命令执行中,MsgProc()窗口回调函数对建立窗口的事件消息做出反映,马上调出OpenGL框架中的SetupPixelFomat()检测机器对OpenGL的支持情况,并安装OpenGL显示接口。
● 当窗口建立成功显示时,MsgProc()窗口回调函数对窗口尺寸变化事件消息又作出反映,调出OpenGL框架中的init()对OpenGL视口进行变换调整。
● Windows窗口生成后就进入GameLoop()主循环中,在此一直调出OpenGL框架中的Render()函数进行我们需要的图形处理。
● 程序退出时,调用CleanUp()清除OpenGL的连接。
相关文章推荐
- VC++2010环境下基于MFC框架的OpenGL的编程环境的配置
- VC环境下基于MFC框架的OpenGL的编程环境的配置
- VC环境下基于MFC框架的OpenGL的编程环境的配置
- VC环境下基于MFC框架的OpenGL的编程环境的配置
- 基于VC++的OpenGL编程讲座之概述(2)
- 基于VC++的OpenGL编程讲座之基本图元(2)
- VC编程小技巧之框架窗口及其他
- 基于VC++的OpenGL编程讲座之基本图元(1)
- 基于VC++的OpenGL编程讲座之坐标变换
- 基于VC++的OpenGL编程讲座之基本图元(3)
- OpenGL【3 MFC和OpenGL联合编程框架简述】
- VC中使用OpenGL编程的初步
- VC基于单文档opengl框架
- VC++孙鑫-第三章-MFC AppWizard的原理与MFC程序框架-讲WIN32SDK和MFC编程的相同过程
- VC编程中关于新建的框架窗口的销毁的一个心得
- 基于VC++的OpenGL编程讲座之基本图元
- 在MDI主框架窗口中添加位图(转载自CSDN VC编程知识总结)
- VC++的OpenGL编程
- VC编程中关于新建的框架窗口的销毁的一个心得
- VC编程中关于新建的框架窗口的销毁的一个心得