2. GLEW and GLUT

GLEW

由于微软的垄断,Windows不支持新版本OpenGL,因此需要GLEW扩展库辅助。

GLEW:OpenGL Extension Wrangler Library

glew.c 中

#define GLEW_BUILD GLEW_STATIC
#include "include/GL/glew.h"
#if defined(_WIN32)
# include "include/GL/wglew.h"
#elif !defined(__ANDROID__) && !defined(__native_client__) && !defined(__HAIKU__) && (!defined(__APPLE__) || defined(GLEW_APPLE_GLX))
# include "include/GL/glxew.h"
#endif

主头文件

glew.h

Win32 头文件

wglew.h

安卓、苹果 头文件

glxew.h

main.c 中

如果要把GLEW编译进main.exe,则

1 先定义GLEW静态生成

#define GLEW_BUILD GLEW_STATIC

2 然后再include主要的头文件

#include "include/GL/glew.h"

GLUT

GLUT:OpenGL Utility Toolkit

因为OpenGL只管图形,而窗口创建消息回调什么的需要GLUT库帮忙,或者可以不使用GLUT而把GLEW和WinAPI搭配在Win32下跑。

GLUT默认对窗口样式的设置比较简单:

glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA );

这里修改GLUT源码精确调整了窗口样式:

原文地址:https://www.cnblogs.com/faeriesoft/p/4029158.html