OpenGL在VS2010运行的资料总结.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
OpenGL在VS2010运行的资料总结

VC+ +6.0环境下基于OpenGL的编程步骤 1)创建项目文件:选择File New菜单项,建立一个基于单文档(SDI)的项目文件MyOpenGLTest, View类基于Cview。 2)选择Build Setting菜单项,在Link选项组的Lib列表框中添加opengl 32.lib,glu 32.lib,若使用 OpenGL的辅助库函数,则还需添加glaux.lib。 3)选择View ClassWizard菜单项,打开MFC对话框,在ClassName列表框中选择CMy- OpenGLTestView类,进行以下操作:选择WM_CREATE消息,单击Edit Code,将OpenGL初始化代码添 加到OnCreate()函数中。 定义像素存储格式即PIXELFORMATDESCRIPTOR CCLient dc(this); int pixelFormat=ChoosePixelFormat(dc,m hDC,pfd); BOOL success=SetPixelFormat(dc,m hDC,pixelFormat,pfd); M hRC=wglCreateContext(dc,m hDC); 选择WMDESTROY消息,在OnDestroy()中添加以下代码: wglDeleteContext(m hDC); 在MyOpenGLTestView.cpp中的PreCreateWindows()函数中添加代码: cs.style =WS CLIPCHILDREN WS CLIPSIBLINGS; OpenGL只对WSCLIPCHILDREN WS CLIPSIBLINGS类型窗口有效; 在MyOpenGLTestView.cpp中,将以下代码添加到OnDraw()函数中: wglMakeCurrent(pDC-m hDC,m hRC); DrawScene(); WglMakeCurrent(pDC-m hDC,NULL); 在MyOpenGLTestView.cpp中,添加成员函数DrawScence(): void cMyOpenGLTestView::DrawScence() {   //绘制三维场景 } 4)在MyOpenGLTestView.h中包含以下头文件并添加类成员说明: #includegl.h #includeglu.h #includeglaux.h 在CMyOpenGLTestView类中的protected:段中添加成员变量声明: HGLRC m hRC; 同时添加成员函数声明:DrawScene(); 用户只需在DrawScene()函数中添加程序代码即可。 3 VC++与OpenGL应用接口的建立实现VC+ +6.0和OpenGL之间图形接口的机制是像素格式设置以及关联DC(DeviceContext)与RC(Rendering Context)[3].在创建一个渲染环境RC之前,首先要设置像素格式,然后为OpenGL建立RC,只有建立RC后,OpenGL才能调用绘图原语在窗口中绘出图形.Win32 API提供了几个操作RC的函数,包括建立、复制、使用、删除、查询等,它们都以wgl为词头.RC是以线程为单位的,每个线程必须使用一个RC作为当前RC,才能执行OpenGL绘图原语.VC+ +6.0和OpenGL图形接口的实现步骤如下: 首先建立一个新的VC+ +Win32 API,然后设置连接OpenGL库文件,在菜单中选择Pro-ject-Settings,最后选择LINK选项,在“Ob-ject/Library Modules”下增加OpenGL所需的库程序,如OpenGL32.lib,Glu32.lib,Glaux.lib[4].做完以上工作后,就可以编写OpenGL程序了. 3.1 Include文件及全局变量的设置 每个程序开始的4行包括了窗口及OpenGL所使用的库的头文件.程序代码如下: #includewindows.h//视窗文件 #includegl\gl.h//OpenGL库文件的头文件 #includegl\glu.h//GLu32.lib的头文件 #includegl\glaux.h//Glaux.lib的头文件 接下来是定义在程序中计划使用的所有变量.程序代码如下: HGLRC hRC=NULL;//定义渲染环境 HDC hDC=NULL;//私有的GDI设备环境 HWND hWnd=NULL;//得到窗口句柄 HINSTANCE hInstance;//得到程序的例子 第1行是建立一个渲染环境RC.每一个OpenGL程序都会被链接到渲染环境,渲染环境的作用是将OpenGL调用连结到设备环境,它被定义为hRC.第2行的任务是为程序在窗口中绘制的需要创建一个

您可能关注的文档

文档评论(0)

kabudou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档