本文记录和提供了在Windows 10上用Visual studio 2022开发OpenGL程序并支持窗体和中文显示的框架,使用如下库:glad+glwf3+glm+freetype2.12.1
https://bzc.idealand.xyz:8600/dl/2_2022.10.25_10.23.05_OpenGL3.zip/dl
上面提供的项目文件是已经配置好的,只需在main.cpp里面将下面这行路径要改成你电脑上的路径即可编译运行,chinese.msyh.ttf在 libs/fonts 里面
#define FontChineseMicrosoftYahei "C:/idealand/libs/fonts/chinese.msyh.ttf"
下面说明一下配置的过程
1. 安装vs2022
https://visualstudio.microsoft.com
只需要选择 Desktop development with C++ 组件,其它组件都不用选。
C++组件中要手动勾上C++ Clang tools和最新版的Windows SDK,其它的保持默认状态即可.
2. 打开vs2022, 创建一个新项目(C++,Windows, Console, Empty Project),创建同名的solution文件夹,这里是OpenGL
在solution文件夹中创建libs文件夹,用于存放第三方库
在源代码中添加main.cpp文件,填写测试内容:
----------------------------------------
#include <stdio.h>
int main(){printf("hello world\n"); }
----------------------------------------
编译运行,这样项目属性中才能出现C/C++选项卡。
3. 设置glad+glwf3+glm+freetype2.12.1库
将项目文件里的libs文件夹拷贝到solution文件夹里面
在项目中属性中添加对库的引用,右击项目,选择项目属性:
注意先在顶部选择Platform: All Platforms,这样可以统一配置Win32和x64
C/C++ - additional include directories:
Platform: All Platforms
$(SolutionDir)libs\;$(SolutionDir)libs\glfw\include\;$(SolutionDir)libs\glad\include\;$(SolutionDir)libs\glad\src\;$(SolutionDir)libs\freetype\include\;
Linker - input - additional dependencies:
Platform: All Platforms
glfw3.lib;opengl32.lib;freetype.lib;$(CoreLibraryDependencies);%(AdditionalDependencies);
Linker - general - additional library directories:
Platform: x64
$(SolutionDir)libs\glfw\x64\lib-vc2022\;$(SolutionDir)libs\freetype\x64\;
Platform: Win32
$(SolutionDir)libs\glfw\Win32\lib-vc2022\;$(SolutionDir)libs\freetype\Win32\;
最后要注意的是必须将freetype\Win32\freetype.dll拷贝到win32 exe程序所在的文件夹,这里是$(SolutionDir)Debug\,否则x86运行时将出现程序无法启动的错误。
4. 修改项目属性为windows application
项目属性
Linker->System->SubSystem: Windows
Linker->Advanced->Entry Point: mainCRTStartup
5. 在main.cpp中填入代码 ,编译运行,就能看到“abc你好”的文字显示了
参考资料:
https://blog.youkuaiyun.com/why1921487875/article/details/110846384
OpenGL的环境搭建(cmake+glfw+glew+vs2017)(2019年)
https://blog.youkuaiyun.com/NowSayHelloWorld/article/details/102635236