gpt4 book ai didi

c++ - 如何为 QtQuick 应用程序选择 OpenGL 上下文

转载 作者:太空宇宙 更新时间:2023-11-04 12:37:37 25 4
gpt4 key购买 nike

我正在写一个QtQuick应用程序,主要是在QML中,但我有一些部分更直接地使用OpenGL(一个OpenSceneGraph场景)。由于某些原因,我想使用 >= 3.3 的 OpenGL 版本,但 Qt 只选择了 3.0 的实现。我的代码是:

main.cpp:

#include <QApplication>
#include <QQmlApplicationEngine>

int main(int argc, char *argv[])
{
// Create the app.
QApplication app(argc, argv);

// Start the UI.
QQmlApplicationEngine engine;
engine.load(QUrl("main.qml"));

return app.exec();
}

main.qml:

import QtQuick 2.7
import QtQuick.Controls 2.2

ApplicationWindow {
id: root
width: 800
height: 600
title: "App"

visible: true

Label {
text: "OpenGL: " + OpenGLInfo.majorVersion + ' ' + OpenGLInfo.minorVersion + OpenGLInfo.profile
}
}

最佳答案

一种方法是在 app.exec() 之前设置默认的 QSurfaceFormat。

#include <QSurfaceFormat>

...

QSurfaceFormat surfaceFormat;
surfaceFormat.setMajorVersion(3);
surfaceFormat.setMinorVersion(3);
surfaceFormat.setProfile(QSurfaceFormat::CoreProfile);
QSurfaceFormat::setDefaultFormat(surfaceFormat);

关于c++ - 如何为 QtQuick 应用程序选择 OpenGL 上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55685351/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com