windows下opengl开发的准备工作
本来准备写一些opengl的入门和概念性的文章,谁知道上班的事情一下子变得很忙,人就变懒了...
不过终于在春节长假有了一些空闲时间。就继续一下未竞的事业吧。
Windows下做OpenGL开发需要的什么:
如果是用VS来开发OpenGl,首先看一下VS目录下的 VC/include/下有没有GL这个文件夹。如果有了,那什么也不需要。
如果没有这个目录,就需要自己创建,并且从网上找gl.h和glu.h两个头文件放到该目录,同时找gl.dll,glu.dll放到windows/system32/下或者放到和项
目编译所得exe文件同目录。
另外,如果想简化一下一些硬件和平台相关的函数调用,可以找glut.h和glut.dll分别放到以上两个目录。
然后VS中可以建立空白工程,在头文件引用路径上加上VC/include/GL。
复制如下代码,可以画一个白色正方形。

1 #include <glut.h>
2 void myDisplay(void)
3 {
4 glClear(GL_COLOR_BUFFER_BIT);
5 glColor3f(1.0f,1.0f,1.0f);
6 glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
7 glFlush();
8 }
9 int main(int argc, char *argv[])
10 {
11 glutInit(&argc, argv);
12 glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
13 glutInitWindowPosition(100, 100);
14 glutInitWindowSize(500, 500);
15 glutCreateWindow("sample");
16 glutDisplayFunc(&myDisplay);
17 glutMainLoop();
18 return 0;
19 }
2 void myDisplay(void)
3 {
4 glClear(GL_COLOR_BUFFER_BIT);
5 glColor3f(1.0f,1.0f,1.0f);
6 glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
7 glFlush();
8 }
9 int main(int argc, char *argv[])
10 {
11 glutInit(&argc, argv);
12 glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
13 glutInitWindowPosition(100, 100);
14 glutInitWindowSize(500, 500);
15 glutCreateWindow("sample");
16 glutDisplayFunc(&myDisplay);
17 glutMainLoop();
18 return 0;
19 }
其中gl开头都是opengl基础实现的函数,glut开头是glut工具库函数。
gl开头的函数实现都是平台无关的,而glut每个平台都会有不同实现。
关于代码中每个函数的作用,在以后的文章中会做一些解释。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端