Chinaunix首页 | 论坛 | 博客
  • 博客访问: 241333
  • 博文数量: 76
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 440
  • 用 户 组: 普通用户
  • 注册时间: 2014-05-20 14:21
文章分类

全部博文(76)

文章存档

2015年(76)

我的朋友

分类: Windows平台

2015-05-08 15:35:29

1.各种库的配置

(1)glew

下载:

将include文件夹下的.h文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL目录中(没有GL目录就自己创建一个,这里的具体路径视电脑上VS2008安装的位置而定)
将lib文件夹下的.lib文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\lib目录中
将bin文件夹下的.dll文件拷贝到C:\Windows\System32目录中

(2)glut

下载OpenGL的glut类库:

将.h文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL目录中(没有GL目录就自己创建一个,这里的具体路径视电脑上VS2008安装的位置而定)
将.lib文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\lib目录中
将.dll文件拷贝到C:\Windows\System32目录中

2.配置项目环境

在需要用到openGL的每个项目中都需要执行以下步骤:

(1)项目——项目属性——配置属性——C/C++— —预处理器——预处理器定义,添加

GLUT_BUILDING_LIB

(2)项目——项目属性——配置属性——链接器——输入——附加依赖项,添加

glut32.lib Opengl32.lib Glu32.lib glew32.lib

3.应用举例

(1)先创建一个Win32控制台应用程序项目(文件——新建——项目——win32——win32控制台应用程序),在下面的名称处任意命名,假定是helloworld,然后点确定。之后点下一步,然后在附加选项的空项目之前打勾,之后点完成。

(2)配置项目属性:如上面所述2所述

(3)在解决方案管理器的源文件文件夹上点右键,添加——新建项——c++文件,任意命名,假定是Hello。

在导航窗格中的源文件分类下的Hello.cpp中输入如下代码:

  1. #include    //这个必不可少  
  2.   
  3. #include   
  4.   
  5. void display()  
  6.   
  7. {  
  8.   
  9. glClear(GL_COLOR_BUFFER_BIT);  
  10.   
  11. glColor3f(1.0,1.0,1.0);  
  12.   
  13. glBegin(GL_POLYGON);  
  14.   
  15.     glVertex3f(0.25,0.25,0.0);  
  16.   
  17.     glVertex3f(0.75,0.25,0.0);  
  18.   
  19.     glVertex3f(0.75,0.75,0.0);  
  20.   
  21.     glVertex3f(0.25,0.75,0.0);  
  22.   
  23.    glEnd();  
  24.   
  25.    glFlush();  
  26.   
  27. }  
  28.   
  29.    
  30.   
  31. void init()  
  32.   
  33. {  
  34.   
  35. glClearColor(0.0,0.0,0.0,0.0);   //以黑色清屏  
  36.   
  37. glMatrixMode(GL_PROJECTION); //glMatrixMode - 指定哪一个矩阵是当前矩阵  
  38.   
  39.                             //GL_PROJECTION,对投影矩阵应用随后的矩阵操作  
  40.   
  41. glLoadIdentity();               //该函数的功能是重置当前指定的矩阵为单位矩阵  
  42.   
  43. glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);  
  44.   
  45. }  
  46.   
  47.    
  48.   
  49. int main(int argc,char** argv)  
  50.   
  51. {  
  52.   
  53. glutInit(&argc,argv);  
  54.   
  55. glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);  
  56.   
  57. glutInitWindowSize(250,250);  
  58.   
  59. glutInitWindowPosition(100,100);  
  60.   
  61. glutCreateWindow("Hello OpenGL");  
  62.   
  63. init();  
  64.   
  65. glutDisplayFunc(display);  
  66.   
  67. glutMainLoop();  
  68.   
  69. return 0;  
  70.   
  71. }  

运行结果是个矩形,成功!
阅读(1366) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~