【问题标题】:How can I enable WebGL in Qt 5.9 under Windows?如何在 Windows 下的 Qt 5.9 中启用 WebGL?
【发布时间】:2019-01-02 04:19:46
【问题描述】:

我想用我的Qt 5.9.2在Windows下的QtWebEngineWidgets.QWebEngineView中使用WebGL。

但是当我尝试在QWebEngineView 中加载webglreport.com 时,它告诉我"This browser supports WebGL 2, but it is disabled or unavailable."

我该如何解决?

这是我的代码:

PyQt:

import os, sys
from PyQt5 import QtCore, QtGui, QtWidgets, QtWebEngineWidgets


if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)


   # app.setAttribute(QtCore.Qt.AA_UseOpenGLES)  # nothing happens, you can comment it out

    view = QtWebEngineWidgets.QWebEngineView()

    # view.settings().setAttribute(QtWebEngineWidgets.QWebEngineSettings.WebGLEnabled, True) # does not help too = (((

    view.load(QtCore.QUrl("http://webglreport.com/?v=2"))

    view.show()

    sys.exit(app.exec_())

    # And here WebGL Report  will tell me: "This browser supports WebGL 2, but it is disabled or unavailable."
    # How can I cope with it???

C++ Qt:

#include <QApplication>
#include <QtWebEngineWidgets/QWebEngineView>

#include <QUrl>
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QWebEngineView view;
    view.load(QUrl("http://webglreport.com/"));
    view.show();
    return a.exec();
}

【问题讨论】:

  • 您在 Qt 构建中使用 OpenGL 还是 ANGLE?
  • 嗯...我不知道。如何检查?
  • 您确定问题出在QWebEngineView 上吗?如果您尝试在普通浏览器(firefox、chrome 或其他)中加载 http://webglreport.com/?v=2 会发生什么?
  • 嗯,当然,我在普通浏览器(谷歌浏览器)中加载了webglreport.com/?v=2,它成功了(它告诉我它支持WebGL 2)。我什至尝试在 Qt 5.10 中加载它,它也成功了。唉,我想在 Qt 5.9 LTS 中启用 WebGL(因为我的 OSGeo4W 包中有它)。

标签: qt pyqt qt5 webgl qwebengineview


【解决方案1】:

二进制包

为 64 位 Linux、macOS 以及 32 位和 64 位 Windows 的 Python v3.5 和更高版本提供了轮子。其中包括相应 Qt 库的副本。

请注意,支持的最低 macOS 版本由轮子中包含的 Qt 版本决定。

请注意,对于 v5.11 及更高版本,32 位 Windows 轮子不包含 WebEngine 模块。 pyqt download

【讨论】:

    猜你喜欢
    • 2018-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-17
    • 1970-01-01
    • 2021-04-30
    • 1970-01-01
    相关资源
    最近更新 更多