QT + OpenGL
1、QT+Opengl的优势
1)安装简单,QT借助于Qt的封装,无需配置第三方库如:GLFW+GLAD
GLFW | GLAD |
GLFW解决操作系统层面的不同 | GLAD使得代码可以用于不同的Opengl驱动 |
创建窗口 定义上下文 处理用户输入 |
Opengl本身只是标准/规范 各个厂家具体实现方式可以不同 |
如果没有类似GLAD的库,Windows下:
需要通过函数指针调用显卡的函数,但是显卡驱动具体函数的地址,运行时才知道
//define the fucntion's prototype typedef void (*GL_GENBUFFERS) (GLsizei, GLuint*); //find the fucntion and assign it to a function pointer GL_GenBuffers glGenBuffers = (GL_GENBUFFERS)wglGetProcAddress("glGenBuffers"); // function can now be called as normal unsigned int buffer; glGenBuffers(1,&buffer);
wglGetProcAddress
获取显卡当前上下文状态下的OpenGL函数的地址