QT中使用OpenGL function

1.前言

QT做界面编程很方便,QT+OpenGL的使用也很方便,因为QT对原生的OpenGL API进行了面向对象化的封装。

如:

cpp 复制代码
函数:initializeOpenGLFunctions()......
类:QOpenGLVertexArrayObject、QOpenGLBuffer、QOpenGLShaderProgram......
数学工具类:QVector3D、QMatrix4x4......

有些时候我们需要使用原生的OpenGL API,这在QT中也很方便,该怎么做呢?

2.内容

如果想在QT中使用原生的OpenGL API,如**glReadPixels** 、glShaderSource,需要参考QT官方文档说明:

QOpenGLFunctions Class | Qt GUI 6.8.1

继承类QOpenGLExtraFunctions,然后就可以使用上述原生API了,常用的用法是这样的,

cpp 复制代码
#include <QOpenGLWidget>
#include <QOpenGLFunctions_4_5_Core>
#include <QOpenGLShaderProgram>
#include <QOpenGLVertexArrayObject>
#include <QOpenGLBuffer>

//#include <AIS_InteractiveContext.hxx>

class QMenu;
class QRubberBand;

//! Adapted a QWidget for OpenCASCADE viewer.
class OccView : public QOpenGLWidget, QOpenGLFunctions_4_5_Core
{
   // implementation here

}
相关推荐
向量引擎4 小时前
用向量引擎重构你的AI工具箱:从手搓OpenClaw到搞定GPT-5.3的全栈实战
api
Laurence5 小时前
从 code.qt.io 下载单个示例项目(一个目录/文件夹)
qt·目录·下载·文件夹·示例项目
Tianwen_Burning6 小时前
QT 槽和信号
qt
深蓝海拓7 小时前
PySide6的QTimeLine详解
笔记·python·qt·学习·pyqt
爱搞事的程小猿8 小时前
qml自定义扩展模块
c++·qt·qml
new_zhou8 小时前
Windows环境c++开发dump文件生成(优化方案)
c++·windows·qt
Laurence9 小时前
使用 CLion 打开 Qt Creator 项目(.pro 文件)
qt·clion·转换·creator·创建项目·qmake·.pro
新诺韦尔API10 小时前
手机二要素验证和银行卡二要素验证接口的区别?
大数据·api
范特西.i12 小时前
QT聊天项目(4)
开发语言·qt
sunriver200013 小时前
【Qt】Qt 5.12.12 使用msvc2015 x64编译器调试问题
qt·msvc2015_64·5.12.12