OpenGL环境搭建

OpenGL环境搭建

    • 1 安装GLFW
      • 1.1 下载GLFW源代码
      • 1.2 CMake编译源代码
      • 1.3 链接
    • 2 安装GLAD

参考 link

1 安装GLFW

在画出出色的效果之前,首先要做的就是创建一个OpenGL上下文(Context)和一个用于显示的窗口。然而,这些操作在每个系统上都是不一样的,OpenGL有目的地从这些操作抽象(Abstract)出去。这意味着我们不得不自己处理创建窗口,定义OpenGL上下文以及处理用户输入。
GLFW是一个专门针对OpenGL的C语言库,它提供了一些渲染物体所需的最低限度的接口。它允许用户创建OpenGL上下文,定义窗口参数以及处理用户输入。

1.1 下载GLFW源代码

https://www.glfw.org/download.html
OpenGL环境搭建_第1张图片
下载,然后解压,我这里解压到了D:\Program Files\glfw-3.3.2。

1.2 CMake编译源代码

https://cmake.org/download/
根据系统,直接下载安装包,然后安装,这里下载的是windows 64位的:
OpenGL环境搭建_第2张图片
安装后,打开CMake的GUI界面,按照下面步骤点击:
OpenGL环境搭建_第3张图片
在第3步点击Configure时,会弹出一个框,选择visual studio的版本(如果没装visual studio,先百度装一个吧)和系统的版本(64位系统选x64)
OpenGL环境搭建_第4张图片
Generate完后,生成的工程文件会在你的build文件夹中。
使用visual studio打开 GLFW.sln:
OpenGL环境搭建_第5张图片
点生成解决方案进行编译,
注意,如果是win 64位的系统,这里要先设置为x64:
OpenGL环境搭建_第6张图片OpenGL环境搭建_第7张图片
然后编译的库glfw3.lib 就会出现在src/Debug文件夹内。
OpenGL环境搭建_第8张图片

1.3 链接

1、根据自己的情况,找一个路径,创建一个目录,我这叫opengl_thirdparty(名称随意),然后在该目录下,创建Includes 和 Libs 两个文件夹:
OpenGL环境搭建_第9张图片
2、在Includes下放入GLFW文件夹:
OpenGL环境搭建_第10张图片
这个文件夹是哪里来的呢?就是前面下载的GLFW源代码,解压后,里面的include目录里的文件夹,直接复制过来就行了(glad和KHR这两个在后面才加):
OpenGL环境搭建_第11张图片
3、在LIbs文件夹里放入之前生成的 glfw3.lib:
OpenGL环境搭建_第12张图片
4、打开Visual Studio,创建一个新的项目。如果VS提供了多个选项,选择Visual C++,然后选择Empty Project(空项目)(别忘了给你的项目起一个合适的名字)。
打开项目后,
注意,如果是win 64位的系统,这里要先设置为x64:
OpenGL环境搭建_第13张图片
打开项目的属性:
OpenGL环境搭建_第14张图片
在VC++目录选项里添加上面创建的Includes和Libs目录:
OpenGL环境搭建_第15张图片
在链接器里的输入选项,添加glfw3.lib和opengl32.lib(glfw3.lib就是前面Libs文件夹里的,opengl32.lib在windows下是安装VS后自带的):
OpenGL环境搭建_第16张图片

2 安装GLAD

因为OpenGL只是一个标准/规范,具体的实现是由驱动开发商针对特定显卡实现的。由于OpenGL驱动版本众多,它大多数函数的位置都无法在编译时确定下来,需要在运行时查询。所以任务就落在了开发者身上,开发者需要在运行时获取函数地址并将其保存在一个函数指针中供以后使用。
GLAD是一个开源的库,它能解决我们上面提到的那个繁琐的问题。GLAD的配置与大多数的开源库有些许的不同,GLAD使用了一个在线服务。在这里我们能够告诉GLAD需要定义的OpenGL版本,并且根据这个版本加载所有相关的OpenGL函数。
打开 在线服务,选择相应的版本,建议选3.3以上的版本:
OpenGL环境搭建_第17张图片
然后点击 GENERATE,弹出以下页面,下载glad.zip:
OpenGL环境搭建_第18张图片
然后解压,把include下面的这两个文件夹,
OpenGL环境搭建_第19张图片
放到之前创建的Includes目录下:
OpenGL环境搭建_第20张图片
然后复制src/glad.c文件,添加到刚刚你创建的工程中
OpenGL环境搭建_第21张图片
OpenGL环境搭建_第22张图片
然后,编写一个main.cpp,就可以引入头文件了:

#include  
#include 

#include 

int main() {
	
	std::cout << "hello" << std::endl;

	return 0;
}

OpenGL环境搭建_第23张图片
opengl环境搭建完成,进一步学习的话可看 link

你可能感兴趣的:(OpenGL环境搭建)