问题标签 [qglwidget]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2954 浏览

c++ - 将 QGLWidget 添加到 QMainWindow

我有一个带有 QGraphicsView 的 MainWindow 类,我想将它添加到 MainWindow 中,这样我就可以看到实际发生了什么。我现在要做的就是渲染一个立方体。

主功能

主窗口控件

GLWidget::initializeGL

如您所见,glClearColor应该将背景设置为黑屏。问题是当我渲染它时,我看到两个窗口弹出而不是一个。虽然MainWindow该类有一个应该GLWidget呈现QGraphicsView. 两个窗口都只显示白屏;其中一个至少应该显示为黑色背景,就像glClearColor美国一样。

我在这里做错了什么?

0 投票
1 回答
521 浏览

c++ - 如何在 beginNativePainting() 中翻转纹理?

我正在编写一个继承自QGLWidget的类:

的构造函数GLWidget从磁盘加载图像,并paintEvent()负责使用在beginNativePainting()和之间执行的原生 OpenGL 调用将数据发送到 GPU endNativePainting(),这工作正常。

问题是图像被翻转(垂直)显示,我需要解决这个问题。我还没有找到解决这个问题的方法,所以我希望有人能在这个问题上帮助我。

在本机 Glut 应用程序中,我可以glFrustum()像这样简单地调用来进行翻转:

但是我尝试在 之后加载投影矩阵,beginNativePainting()glFrustum()使用与上面调用相同的值进行调用,我得到的只是一个黑屏(这意味着它没有按预期工作)。

有小费吗?

此外,使用 的mirrowed(false, true)方法进行QImage翻转对图像的显示没有任何影响。

0 投票
2 回答
3111 浏览

opengl - 在 QML 中托管 QOpenGL 小部件

我有一个库证明我是一个 QGLWidget,界面只允许我调整大小/设置大小,并控制一些 GL 动画;但是没有 GL 命令暴露在外面,我所做的只是初始化 GLWidget,然后将上下文传递给库,然后调用交换缓冲区来显示动画..

我想将此 QGLWidget 库集成到 QML 中,是否可以在 QML 中放置一个 QGLWidget ?如果是的话怎么办?

0 投票
1 回答
468 浏览

qt - 如何使用 Horde3d 和 OpenGL 绘制 Qt 小部件?

我想要的是一个使用 Horde3D 显示 3d 场景并使用 Horde3D(或 OpenGL)在 3D 场景之上绘制 QWidget 的 Qt 应用程序。

基本上我想为我的 3D 场景添加 UI。并且这个 UI 应该使用 OpenGL 来绘制。

我已经成功地学习了这个教程:Accelerate your Widgets with OpenGL和这个教程 - Setup Horde with Qt4

但是当我尝试组合它们时,我可以看到我的 3D 场景,但没有 UI 控件。我将 QGraphicsView、QGraphicsScene 和 QGLWidget 与 Horde3d 一起使用。如果我不使用 Horde3D(我的意思是不要初始化它),那么我的 UI 控件会正确呈现。

我面临Horde3D 论坛上所述的相同问题。

我该如何解决?

0 投票
2 回答
1085 浏览

qt - 在 Qt 4.8.0 中使用 QGlWidget 更改 QWidget

我正在开发一个当前使用 QWidgets 渲染移动图像的应用程序,并且我正在尝试从使用 QWidgets 转移到 QGlWidgets,但我的应用程序不断崩溃。我所做的唯一修改是:

由此:

对此:

我是否需要更多地修改我的代码,如果需要,还需要进行哪些其他修改?

我目前正在使用 Visual Studio 2010 和 qt 4.8.0

0 投票
1 回答
274 浏览

c++ - 在 MacOS 10.7.2 上安装 libQGLViewer:请求 Qt3 支持?

我正在尝试在 MacOS 10.7.2 上安装 libQGLViewer2.3.13(最新版本),但在编译 libqglviewer 的某些部分后它给了我这些错误:

有人可以告诉我如何解决这个问题吗?

谢谢!

0 投票
1 回答
3027 浏览

qt - “QGLContext::makeCurrent() : wglMakeCurrent failed: The operation completed successfully” 是什么意思?

我正在尝试制作一个使用 QGLWidgets 的多线程 Qt 应用程序,但我不断收到此错误。(我正在尝试使用 QPainter 从另一个线程进行绘制)

而且看起来我也因此而发生了巨大的内存泄漏。

错误是“QGLContext::makeCurrent() : wglMakeCurrent failed: The operation completed successfully”

0 投票
1 回答
489 浏览

qt - 使用 QGLWidget::renderText 与 QGLBuffer 崩溃

我在使用 QGLBuffer 和 QGLWidget::renderText 函数时遇到问题。我读到 renderText 与缓冲区对象混淆,并且在渲染文本之前应该解除绑定。所以我为我使用的所有缓冲区调用 QGLBuffer::release 。尽管如此,renderText 还是会使应用程序崩溃。有人遇到过这样的问题吗?提前致谢。

我正在使用带有 C++ 的 Windows 的 Qt 4.7.4。

0 投票
2 回答
645 浏览

qt - 未创建接触点的 QList,“发生数据中止异常”

我正在尝试为针对 N8(和 C7)的程序获取触摸输入,但我无法使用 QTouchEvent::touchPoints() 创建 QList 来保持接触点。该程序因以下行而崩溃:Thread has crashed: A data abort exception has occurred accessing 0xee

重载的事件函数如下所示:

现在,

  • 我以前从未使用过容器。但是在程序的另一部分创建和使用 QList 可以正常工作。我应该在我的 .pro 文件中包含一些内容吗?(大多数问题似乎都与我有关!)
  • 我读过(一点)关于 Qt 和 Symbian 中的异常的信息,但我无法理解其中的大部分内容。但是除了 3D 对象的纹理之外,我没有做任何基于网络或资源的 i/o 或操作。运行程序时的内存分配是否可能会产生一些问题?

基本上我只是想打印接触点。但我不知道为什么我不能创建一个 QList。代码编译得很好。我尽了最大努力(不成功),但是有没有其他方法可以获取触摸点的屏幕坐标(不需要 QList)?欢迎任何意见。

[转自qt-project.org。]

0 投票
4 回答
1166 浏览

qt - 创建QGLWidget时如何关闭Qml窗口

我正在尝试构建一个游戏,其中 ui 部分是用 qml(菜单等)制作的,而渲染和逻辑部分是用 C++ 制作的。为此,我使用了 QGLWidget 子类。游戏从 Qml 开始(在主函数中使用 QDeclarativeContext),然后单击“NewGame”,我正在加载我的 QGLWidget 子类。像这样的东西:

问题是当我加载 QGLWidget 时,我无法找到关闭 Qml 窗口的方法。与我所做的一样,两个窗口同时显示。

这是它的代码。

// 导入 QtQuick 1.0 // 以 S60 5th Edition 或 Maemo 5 为目标导入 QtQuick 1.1

}

}