根据CodeXL,我';m在Qt中禁用角度层时未成功
我已经尽力在我的Qt应用程序中禁用了ANGLE层,但显然没有发生。在CodeXL调试器中运行应用程序时,事件日志包含以下行: 加载的DLL:C:\Windows\SysWOW64\d3d11.DLL 所以它加载的是Direct3D,在Qt中,它只通过角度发生。在CodeXL中点击“Break”按钮也没有任何作用,这对我来说意味着没有真正的OpenGL调用发生,它们只被转换为D3D 事件日志还指出: 调试字符串:加载opengl32.dll失败(找不到指定的模块。) 为什么会发生这种情况,我如何修复它? 我想禁用ANGLE的原因是,否则我无法使用CodeXL进行调试(它不支持D3D调试) 我的系统:根据CodeXL,我';m在Qt中禁用角度层时未成功,qt,opengl,codexl,google-angle,Qt,Opengl,Codexl,Google Angle,我已经尽力在我的Qt应用程序中禁用了ANGLE层,但显然没有发生。在CodeXL调试器中运行应用程序时,事件日志包含以下行: 加载的DLL:C:\Windows\SysWOW64\d3d11.DLL 所以它加载的是Direct3D,在Qt中,它只通过角度发生。在CodeXL中点击“Break”按钮也没有任何作用,这对我来说意味着没有真正的OpenGL调用发生,它们只被转换为D3D 事件日志还指出: 调试字符串:加载opengl32.dll失败(找不到指定的模块。) 为什么会发生这种情况,我如何修
- 视窗10
- 首款GPU:Intel HD Graphics 5500
- 第二个GPU:AMD Radeon R5 M330(我想这就是我的应用程序使用的GPU)
如果要完全禁用角度,应设置应用程序属性。如果这还不够,那么针对OpenGL32.lib的链接可能会有所帮助
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QQuickFramebufferObject>
#include <QOpenGLShaderProgram>
#include <QOpenGLFramebufferObject>
#include <QQuickWindow>
class MyItem : public QQuickFramebufferObject {
Q_OBJECT
public:
Renderer* createRenderer() const;
};
class MyItemRenderer : public QQuickFramebufferObject::Renderer {
public:
void render() {
update();
}
QOpenGLFramebufferObject* createFramebufferObject(const QSize &size) {
QOpenGLFramebufferObjectFormat format;
format.setAttachment(QOpenGLFramebufferObject::CombinedDepthStencil);
return new QOpenGLFramebufferObject(size, format);
}
};
QQuickFramebufferObject::Renderer* MyItem::createRenderer() const {
return new MyItemRenderer();
}
int main(int argc, char **argv) {
qputenv("QT_OPENGL_BUGLIST", "Z:/disable_angle.txt");
QGuiApplication::setAttribute(Qt::AA_UseDesktopOpenGL);
QGuiApplication app(argc, argv);
qmlRegisterType<MyItem>("MyItem", 1, 0, "MyItem");
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
return app.exec();
}
#include "main.moc"
import QtQuick 2.0
import MyItem 1.0
import QtQuick.Window 2.2
Window {
visible: true
width: 400
height: 400
MyItem {
anchors.fill: parent
}
}
{
"entries": [
{
"id": 1,
"description": "Disable angle",
"os": {
"type": "win"
},
"features": [
"disable_angle"
]
}
]
}