当前位置:首页 » 存储配置 » vs如何配置opengl

vs如何配置opengl

发布时间: 2022-01-08 23:00:40

‘壹’ 如何在VS2010中安装最新版本opengl

安装GLUT工具包

GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。
Windows环境下的GLUT下载地址:(大小约为150k)
http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip

GLUT代表OpenGL应用工具包,英文全称为OpenGL Utility Toolkit,是一个和窗口系统无关的软件包,
它由Mark Kilgard在SGI时写的。作为AUX库的功能更强大的替代品,用于隐藏不同窗口系统API的复杂性。
是一个学习OpenGL编程的一个良好开端。

VS环境配置

将下载的压缩包解开,将得到5个文件(glut.dll, glut32.dll, glut.lib, glut32.lib,glut.h)
(1)把glut.h复制到x:\Program Files\Microsoft\Visual Studio 10.0\VC\include\gl文件夹中,如果没有gl这个文件夹则可以自己新建一个。(x是你安装VS的盘符号)
(2)把解压得到的glut.lib和glut32.lib放到静态函数库所在文件夹(即与include并排的lib文件夹下)。
(3)把解压得到的glut.dll和glut32.dll放到操作系统目录下面的system32文件夹内。(典型的位置为:C:\Windows\System32)
(注:如在开发应用程序时用到OpenGL辅助库函数,则还需下载相应动态链接库,包含glaux.dll, glaux.lib, glaux.h,相应步骤同上)

http://www.cnblogs.com/longdouhzt/archive/2012/02/13/2350094.html

‘贰’ 如何在visual studio 中配置opengl

1.打开vs2015,运行—devenv

2
在Visual C++下新建一个win32控制台程序

确定—下一步—完成

3
项目—管理Nuget程序包

4
浏览——在搜索栏输入NupenGL,安装这两个文件包

5
程序测试
#include <GL/glut.h>
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
static int year = 0, spin = 0, day = 0;static GLint fogMode;const int n = 100;const GLfloat R = 1.0f;const GLfloat Pi = 3.1415926536f;
void DrawCircle() {

int i;
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_LINE_LOOP);

for (i = 0; i < n; ++i)
{
glColor3f(1.0, 0.0, 0.0);
glVertex2f(R*cos(2 * Pi / n*i), R*sin(2 * Pi / n*i));
}

glEnd();
glFlush();
}
void init(void) {
GLfloat position[] = { 0.5, 0.5, 3.0, 0.0 };
glEnable(GL_DEPTH_TEST); //防止遮挡 glLightfv(GL_LIGHT0, GL_POSITION, position);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);

{
GLfloat mat[3] = { 0.1745, 0.01175, 0.01175 };
glMaterialfv(GL_FRONT, GL_AMBIENT, mat);
mat[0] = 0.61424; mat[1] = 0.04136; mat[2] = 0.04136;
glMaterialfv(GL_FRONT, GL_DIFFUSE, mat);
mat[0] = 0.727811; mat[1] = 0.626959; mat[2] = 0.626959;
glMaterialfv(GL_FRONT, GL_SPECULAR, mat);
glMaterialf(GL_FRONT, GL_SHININESS, 0.6*128.0);
}

glEnable(GL_FOG);

{
GLfloat fogColor[4] = { 0.5, 0.5, 0.5, 1.0 };
fogMode = GL_EXP;
glFogi(GL_FOG_MODE, fogMode);
glFogfv(GL_FOG_COLOR, fogColor);
glFogf(GL_FOG_DENSITY, 0.35);
glHint(GL_FOG_HINT, GL_DONT_CARE);
glFogf(GL_FOG_START, 1.0);
glFogf(GL_FOG_END, 5.0);
}

glClearColor(0.5, 0.9, 0.9, 1.0); /* fog color */

}
void display(void) {
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glColor3f(0.0, 1.0, 1.0);
glPushMatrix(); //记住自己的位置
glutSolidSphere(1.0, 20, 16); /* 画太阳半径、 20经度、16纬度*/
glRotatef(spin, 0.0, 1.0, 0.0); //自转,绕着一个向量以给定角度旋转(正的为逆时针)
glTranslatef(2.0, 1.0, 0.0);
glRotatef(spin, 1.0, 0.0, 0.0); //公转
glRectf(0.1, 0.1, 0.5, 0.5);
glColor3f(0.0, 0.0, 1.0);
glutWireSphere(0.2, 8, 8); /* 画第一颗小行星 */
glColor3f(1.0, 0.0, 0.0);
glTranslatef(2.0, 1.0, 0.0);
glRotatef(2 * spin, 0.0, 1.0, 0.0);
glutSolidSphere(0.5, 16, 8);
glPopMatrix();//回到原来的位置 glutSwapBuffers();
}
void spinDisplay(void) {
spin = spin + 2;
if (spin > 360)
spin = spin - 360;
glutPostRedisplay();
}
void mouse(int button, int state, int x, int y) {
switch (button)
{
case GLUT_LEFT_BUTTON:
if (state == GLUT_DOWN)
glutIdleFunc(spinDisplay);
break;

case GLUT_MIDDLE_BUTTON:
if (state == GLUT_DOWN)
glutIdleFunc(NULL);
break;

default:
break;
}

}
void reshape(int w, int h) {
glViewport(0, 0, (GLsizei)w, (GLsizei)h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(60.0, (GLfloat)w / (GLfloat)h, 0.5, 20.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0.0, 10.0, 10.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);
}
void keyboard(unsigned char key, int x, int y) {
switch (key) {
case 'd':
day = (day + 10) % 360;
glutPostRedisplay();
break;
case 'D':
day = (day - 10) % 360;
glutPostRedisplay();
break;
case 'y':
year = (year + 5) % 360;
glutPostRedisplay();
break;
case 'Y':
year = (year - 5) % 360;
glutPostRedisplay();
break;
case 27:
exit(0);
break;
default:
break;
}
}
int main(int argc, char** argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutInitWindowSize(400, 400);
glutInitWindowPosition(100, 100);
glutCreateWindow("OpengGL 程序设计测试");
init();
//glutDisplayFunc(DrawCircle); glutDisplayFunc(display);
glutReshapeFunc(reshape);
//glutKeyboardFunc(keyboard); glutMouseFunc(mouse);
glutMainLoop();

return 0;
}

‘叁’ 如何在VS2010配置OpenGL

glut.h ---> C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include\gl

glut.dll,glut32.dll ---> C:\Windows\SysWOW64 (windows7 64位操作系统)

---> C:\Windows\System32 (windows7 32位操作系统)

glut.lib,glut32.lib ---> C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib

!!无须!!用宏 #define GLUT_DISABLE_ATEXIT_HACK

好多人glut.h不知道放哪里,自己新建了一个文件夹,其实很多前辈在之前就说过,

要搜索gl这个文件夹,将glut.h放到里面包含gl.h glu.h这两个文件的gl文件夹中.

直接下面例程编译即可通过

例程如下

#include <gl\glut.h>

void myDisplay(void)

{

glClear(GL_COLOR_BUFFER_BIT);

glRectf(-0.5f, -0.5f, 0.5f, 0.5f);

glFlush();

}

int main(int argc, char *argv[])

{

glutInit(&argc, argv);

glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);

glutInitWindowPosition(100, 100);

glutInitWindowSize(400, 400);

glutCreateWindow("第一个OpenGL程序");

glutDisplayFunc(&myDisplay);

glutMainLoop();

return 0;

}

================================================

1. 把解压得到的glut.h放到"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include\gl"(与具体安装位置有关,应该是 安装目录\microsoft sdks\windows\v7.0A\include\gl)

2. 把解压得到的glut.lib和glut32.lib放到"“Programfiles(x86)\Microsoft Visual studio 10.0\VC\lib" 中(与具体安装位置有关,同上)

3. 把解压得到的glut.dll放到"C:\Windows\System32"

4. 把glut32.dll放到“Programfiles(x86)\Microsoft Visual studio 10.0\VC\bin”下(注意这个,网上有人说放到system32里,但是我试过,会报错)(与具体安装位置有关,同上)

5. 打开vs2010,随便打开或新建一个项目。 选择 project->project property-> Configuration Properties->Linker->Input->Additional Dependencies 在其中添加opengl32.lib glu32.lib glut32.lib

如果这样还报错的话应该注意以下几点:

有时候在建console application 的时候添加的cpp文件将后缀句改为 .c

有的程序需要glaux工具包,这个下载了,可以按上述步骤添加(操作基本相同)

=========================================================================

VS较老版本格式转换后

general error c101008a错误。

手动添加lib和头文件,然后project clean一下即可。

‘肆’ 如何在vs2015中配置opengl环境

opengl 和windows有很多不兼容的地方你需要在你的opengl头文件上面添加标识 像下面这样: #define GLUT_DISABLE_ATEXIT_HACK #include

‘伍’ vs2012中opengl配置问题

opengl 和windows有很多不兼容的地方你需要在你的opengl头文件上面添加标识
像下面这样:
#define GLUT_DISABLE_ATEXIT_HACK
#include <GL/glut.h>

‘陆’ 在vs2013中配置opengl后无法运行正确的opengl程序

lib 和 dll 有一个就够了。lib是静态的库,dll是动态链接。
比如调用glew的时候,#define GLEW_DLL,那么下文glew调用的就是dll。如果#define GLEW_STATIC,那么就是调用.lib或者.a。

我不知道msvc里面那个dependency是怎么个机制,但是gcc编译GL程序的时候载入lib顺序是很重要的。先是gdi32,然后是glu32,然后opengl32,再然后是glew32,最后是glut或者glfw。看看你的顺序是不是对。

P.S.,问这种问题的时候提供一下debugger信息也会省很多事。

‘柒’ 如何在VS下配置OPENGL

要配置什么?
加头文件#include <gl/gl.h>
加库文件#pragma comment(lib,"opengl32.lib")
或在连接那里加入opengl32.lib就能用了

‘捌’ vs2015中的c#windows窗体应用程序怎么使用OpenGL

你下载openGl的库,在vs2015的工具——选项中,设置include目录和lib库的路径即可。

‘玖’ 如何在vs2015中配置opengl

你先去下载opengl32.lib 和对应的gl.h 和 glext.h 等文件. 然后再代码里 把 lib 和 h 的引用路径都设置一下.

‘拾’ 怎么在visual studio 2010中配置openGL编程的环境啊我在网上找了很多,都不和我的VS2010一样,基于C++编

OpenGL需要两种东西:GLUT和GLEW
FreeGLUT,GLUT的替代版:http://freeglut.sourceforge.net/
GLEW:http://glew.sourceforge.net/

下载,解压,将对应版本的GLUT和GLEW的include文件夹、lib文件夹和bin文件夹中的文件放到一起,设置include路径、lib路径和附加依赖项即可。
实在不知道的话就参考:
OpenGL官网的说明文档:http://www.opengl.org/wiki/Getting_started

热点内容
密码子的原料是什么 发布:2024-09-19 09:11:42 浏览:347
半夜编程 发布:2024-09-19 09:11:36 浏览:103
海康威视存储卡质量如何 发布:2024-09-19 08:55:35 浏览:940
python3默认安装路径 发布:2024-09-19 08:50:22 浏览:516
环卫视频拍摄脚本 发布:2024-09-19 08:35:44 浏览:418
sqlserveronlinux 发布:2024-09-19 08:16:54 浏览:256
编程常数 发布:2024-09-19 08:06:36 浏览:952
甘肃高性能边缘计算服务器云空间 发布:2024-09-19 08:06:26 浏览:162
win7家庭版ftp 发布:2024-09-19 07:59:06 浏览:717
数据库的优化都有哪些方法 发布:2024-09-19 07:44:43 浏览:269