教程地址

中文版:一步步学OpenGL3.3+

英文版:OpenGL Step by Step

源码下载地址:here


windows下的环境配置

以VS2013为例

1.下载源码,解压

2.创建解决方案

opengles 如何使用 bump_解决方案

然后删掉附带的一个项目

鼠标邮件这个项目,选择移除

opengles 如何使用 bump_解决方案_02

移除掉后

opengles 如何使用 bump_Common_03

3.创建Common项目

鼠标右键解决方案,然后选择添加,新建项目

opengles 如何使用 bump_OpenGL_04

opengles 如何使用 bump_opengles 如何使用 bump_05

然后进入源码目录

opengles 如何使用 bump_opengles 如何使用 bump_06

粘贴到,具体粘贴到哪看你自己的喜好。

opengles 如何使用 bump_OpenGL_07

然后选择Common项目的“头文件“,鼠标右键选择,添加现有项,进入到复制过来的Include文件夹内,选择这些头文件,点击确定

opengles 如何使用 bump_opengles 如何使用 bump_08

然后选择“源文件”,右键,添加现有项,进入复制过来的Common目录下,选择这些cpp文件

opengles 如何使用 bump_解决方案_09

然后右键Common点击生存,你会发现- -

opengles 如何使用 bump_解决方案_10

这是因为还没有包含头文件

继续

右键Common项目,选择属性,配置属性,C/C++,常规,选择附加包含目录,添加这些目录,建议网上搜一下$(SolutionDir)的含义,附赠一个我看过的博客here

opengles 如何使用 bump_opengles 如何使用 bump_11

点击确定,然后再右键Common生成

你又会发现,人生怎么难-_-,我只是想学学OpenGL

opengles 如何使用 bump_opengles 如何使用 bump_12

一招粗暴方法,把ReadBinaryFile给注释掉

opengles 如何使用 bump_OpenGL_13

然后再点击生存,终于成立。刺不刺激,惊不惊喜!

opengles 如何使用 bump_右键_14

4.创建一个Tutorial01的空项目

然后右键Tutorial01,选择设为启动项。

新建一个Tutorial01.cpp文件。复制粘贴代码

#include <iostream>
#include <GL/freeglut.h>//freeGLUT窗口库

/**
* 渲染回调函数
*/
void RenderScenceCB(){
	// 清空颜色缓存
	glClear(GL_COLOR_BUFFER_BIT);
	// 交换前后缓存
	glutSwapBuffers();
}

/**
* 主函数
*/
int main(int argc, char ** argv) {

	// 初始化GLUT
	glutInit(&argc, argv);

	// 显示模式:双缓冲、RGBA
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA);

	// 窗口设置
	glutInitWindowSize(480, 320);      // 窗口尺寸
	glutInitWindowPosition(100, 100);  // 窗口位置
	glutCreateWindow("Tutorial 01");   // 窗口标题

	// 开始渲染
	glutDisplayFunc(RenderScenceCB);

	// 缓存清空后的颜色值
	glClearColor(0.0f, 0.0f, 0.0f, 0.0f);

	// 通知开始GLUT的内部循环
	glutMainLoop();

	return 0;
}

你会发现到处爆红。。。因为还有些配置没完成。

进入解决方案的根目录,即和Common、Include的同级目录下再建立一个lib目录。

然后拷贝之前生成的lib文件到这个目录下

opengles 如何使用 bump_解决方案_15

opengles 如何使用 bump_opengles 如何使用 bump_16


然后右键Tutorial01项目,选择属性,配置属性,c/c++,常规,附近包含目录

opengles 如何使用 bump_解决方案_17

点击链接器,常规,附近库目录

opengles 如何使用 bump_Common_18

然后点击链接器下面的输入

opengles 如何使用 bump_opengles 如何使用 bump_19

然后右键Tutorial01生成,你发现还没有成功。缺少的这个lib文件到源码lib文件去复制到自己建的lib文件里面

opengles 如何使用 bump_右键_20

然后你再右键Tutorial01,选择生成,发现通过了,没有报错,接着点击运行。mdzz还有问题,不慌,离成功只差一步了。

opengles 如何使用 bump_右键_21

看报错提示,找不到这个dll,秉承一个思路,缺什么去源码里面找。

opengles 如何使用 bump_OpenGL_22

opengles 如何使用 bump_Common_23

至此,你再点击运行,你会看到一个黑窗口。到此已经基本配置成功,可以开心的被接下来的OpenGl虐了。

opengles 如何使用 bump_opengles 如何使用 bump_24


工欲善其事必先利其器,建议没事多折腾下Visual Studio。


放大招了,其实,其实,源码下面有个Windows目录,进去后你会看到一个ogldev目录,再进去你会发现,卧槽。

点击ogldev.sln,这不就是windows项目工程吗。惊不惊喜,刺不刺激。上面的教程也就是更具这个来摸索配置出来的。