github上下载源码库
https://github.com/openglredbook/examples
下载后解压并改文件夹名为redbook-master,下文路径均为redbook-master下的相对路径
VS设置
1. 创建新的空项目
2. 设置项目属性
+ VC++目录
+ 包含目录 添加:
- \include
- \lib\glfw\include
+ 库目录 添加:
- \libs
- libs内包含 glfw3dll.lib 和 opengl32.lib
+ 链接器
+ 输入
- 附加依赖项 添加 :
- glfw3dll.lib和opengl32.lib
3. 将lib文件内的gl3w.c 文件添加到项目中
测试
- 项目中新建triangles.cpp文件
- 将src\01-triangles\01-triangles.cpp文件的内容拷贝到triangles.cpp文件中
- 运行报错:无法解析的外部符号_LoadShaders
- 项目添加现有项LoadShader.cpp(在lib文件夹下)
- 运行报错:找不到glfw3.dll文件,将glfw3.dll文件添加到项目的Debug文件夹下
- 正常运行,显示黑底白色三角形两个
- 添加txt文件,改名为triangles.vert和triangles.frag
- 将\bin\media\shaders\triangles文件夹下的同名文件内容拷贝到5中是两个文件
- 运行,显示黑底有色三角形两个
问题排查
- 无法解析的外部符号:检查相应lib文件是否正常导入,检查相应.cpp文件是否导入到项目中