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

}
相关推荐
17´4 小时前
Qt从入门到入土(七)-实现炫酷的登录注册界面(下)
c语言·c++·qt
慧集通-让软件连接更简单!5 小时前
安装教程:慧集通集成平台(DataLinkX)智能体客户端安装操作(Linux/windows/mac)
linux·运维·windows·macos·api·系统集成·智能体
咬光空气6 小时前
Qt 5.14.2 学习记录 —— 일 新项目
开发语言·qt·学习
yerennuo8 小时前
FFmpeg 编码和解码
qt·ffmpeg·音视频
智多星0019 小时前
Qt对话框
开发语言·qt
小冯的编程学习之路12 小时前
【QT】:QT图形化界面概述
开发语言·qt
人才程序员12 小时前
Windows11 安卓子系统存储位置更改
android·c语言·c++·qt·qml·界面
yuanbenshidiaos15 小时前
QT----------常用界面组件的使用
开发语言·qt
怎么就重名了19 小时前
MAC系统QT图标踩坑记录
开发语言·qt·macos
mit6.8241 天前
[Qt] Qt介绍 | 搭建SDK
linux·c++·qt·学习