logo资料库

OpenGL常见问题.ppt

第1页 / 共14页
第2页 / 共14页
第3页 / 共14页
第4页 / 共14页
第5页 / 共14页
第6页 / 共14页
第7页 / 共14页
第8页 / 共14页
资料共14页,剩余部分请下载后查看
OpenGL常见问题
OpenGL基本观念(一) • OpenGL是个定义了一个 、 的编程接口的规格,它广泛应用于二、 三维图象的生成。 • OpenGL是个专业的图形程序接口,是一个 功能强大,调用方便的 。 • OpenGL仍然是唯一能够取代微软对3D图 形技术的完全控制的api。
OpenGL基本观念(二) • OpenGL被设计为只有输出功能的,所以它 。 • 核心api没有窗口系统、音频、打印、键盘/ 鼠标或其它输入设备的概念。 • 但是它允许进行渲染的代码完全独立于它 运行的操作系统,允许跨平台开发。 能够以可移植的方式提供基本的窗 口功能。
问题 1 • 用VC6.0写一个OpenGL的控制台程序,最少的配 置是哪些步骤? • 解答: • 在window XP下使用VC6安装GLUT – 下载glutdlls37beta并解压 – 复制glut32.dll和glut.dll到…\windows\system32 – 复制glut.h到...\Microsoft Visual Studio\VC98\Include\GL – 复制glut32.lib和glut.lib到…\Microsoft Visual Studio\VC98\Lib
• • • • • • • • • • • • • • • • • • • • • • • #include void renderScene(void) { //绘制一个简单的二维的三角形 glClear(GL_COLOR_BUFFER_BIT); glColor3f(1.0,0.0,0.0); glBegin(GL_TRIANGLES); //GL_LINE_STRIP glFlush(); } glVertex3f(-0.5,-0.5,0.0); glVertex3f(0.5,0.0,0.0); glVertex3f(0.0,0.5,0.0); glEnd(); void main(int argc, char **argv) { glutInit(&argc, argv); //初始化glut glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA); //设置窗口的模式-深度缓存,单缓存,颜色模型 glutInitWindowPosition(100,100); //设置窗口的位置 glutInitWindowSize(320,320); //设置窗口的大小 glutCreateWindow("3D Tech- GLUT Tutorial"); //创建窗口并赋予title glutDisplayFunc(renderScene);//调用renderScene把绘制传送到窗口 glutMainLoop(); //进入循环等待 }
问题 2 • 在没使用GLUT的情况下, 在VC6.0下如何配置 OpenGL? • 解答: 1. 在你文件头加上 • • • #include #include #include 2. 进入Project菜单,选Settings项,弹出 Settings 对话 框,选Link项,在 Libraries 栏目中加入OpenGL库: opengl32.lib glu32.lib glaux.lib
问题 3 • GL的平台简介: • 基于OpenGL标准开发的应用程序必须运行于32位Windows 平台下,如WindowsNT或Windows95环境;而且运行时还需有动态 链接库OpenGL32.DLL、Glu32.DLL,一般 在…\WINDOWS\system32里面(注:window2000以上系统均带有 OPENGL32.DLL和glu32.dll) • 一般来说,VC6和VS.NET里面就带有GL的基本库 – VC6:…\Microsoft Visual Studio\VC98\Include\GL – VS.NET.2005:…\Microsoft Visual Studio 8\VC\PlatformSDK\Include\gl – 一般是Gl.h,Glaux.h,Glu.h – Lib里也有:OpenGL32.lib,GLu32.lib,GLaux.lib • 所以开发者在VC下可以使用 – #include // Header File For The OpenGL32 Library – #include // Header File For The GLu32 Library – #include // Header File For The Glaux Library
• 同时OpenGL也适应别的OS和语言 • 在OpenGL的基础上还有Open Inventor、 Cosmo3D、Optimizer等多种高级图形库, 适应不同应用。可跟据需要下载相关的开 发包。
分享到:
收藏