版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34347375/article/details/83211114
OpenGL(全写Open Graphics Library)是指定义了一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口。这里将介绍如何在windows平台下,配置并开始第一个OpenGL程序。
目录
文章目录
下载
使用OpenGL,我们需要下载它库文件,包括GLUT,freeGLUT,GLEW,GLTools。
注:freeGLUT其实在慢慢取代GLUT的地位;GLTools库是基于GLEW库的。
我这里提供所有的库文件,并且已经整理到了一起,大家可以直接下载。
下载地址:https://download.csdn.net/download/qq_34347375/10732637
配置
VS2015中配置OpenGL
我的VS2015安装到了I盘
。
1.将压缩包解压,你可以看到三个文件夹,dll
,include
, lib
;
2.将include
文件夹中的所有文件复制到I:\Microsoft Visual Studio 14.0\VC\include
中;
扫描二维码关注公众号,回复:
3894645 查看本文章
3.将dll
文件夹中的所有文件复制到I:\Microsoft Visual Studio 14.0\VC\bin
,C:\Windows\SysWOW64
和 C:\Windows\System32
中;
4.将lib
文件夹中的所有文件复制到I:\Microsoft Visual Studio 14.0\VC\lib
中;
5.在OpenGL项目中添加附加依赖项;
在项目的附加依赖项中添加 gltools.lib
opengl32.lib
glew32s.lib
现在用程序测试一下:
源码如下:
#include <GLTools.h>
#include <GLShaderManager.h>
#include <GL/glut.h>
GLBatch triangleBatch;
GLShaderManager shaderManager;
void ChangeSize(int w, int h)
{
glViewport(0, 0, w, h);
}
void SetupRC()
{
glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
shaderManager.InitializeStockShaders();
GLfloat vVerts[] = {
-0.5f,0.0f,0.0f,
0.5f,0.0f,0.0f,
0.0f,0.5f,0.0f };
triangleBatch.Begin(GL_TRIANGLES, 3);
triangleBatch.CopyVertexData3f(vVerts);
triangleBatch.End();
}
void RenderScne(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT);
GLfloat VRed[] = { 1.0f,0.0f,0.0f,1.0f };
shaderManager.UseStockShader(GLT_SHADER_IDENTITY, VRed);
triangleBatch.Draw();
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
gltSetWorkingDirectory(argv[0]);
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH | GLUT_STENCIL);
glutInitWindowSize(800, 600);
glutCreateWindow("Triangle");
glutReshapeFunc(ChangeSize);
glutDisplayFunc(RenderScne);
GLenum err = glewInit();
if (GLEW_OK != err) {
fprintf(stderr, "GLEW Error:%s\n", glewGetErrorString(err));
return 1;
}
SetupRC();
glutMainLoop();
return 0;
}
效果如下: