QQuick3D Class
正しいサーフェスフォーマットを選択するためのヘルパークラス。詳細...
Header: | #include <QQuick3D> |
静的パブリックメンバー
QSurfaceFormat | idealSurfaceFormat(int samples = -1) |
詳細説明
OpenGLでQt Quick 3Dを使用する場合、Qt Quick を初期化するときに、どのようなsurface format を使用するかを定義するために、特別な手順を踏む必要があります。これは、Qt Quick が3Dコンテンツが使用されていることを認識するまでに、OpenGLコンテキストとウィンドウ・サーフェスはすでに初期化されているからである。そのため、このヘルパークラスは、Qt Quick 3Dから理想的なサーフェスフォーマットを要求し、初期化前にQt Quick のデフォルトサーフェスとして設定できるようにするために提供されている。
OpenGL以外のレンダリングバックエンドを使用しているときにこのヘルパーを実行すると、要求されたサンプルを含む現在のデフォルトのQSurfaceFormat 。
OpenGLレンダリングバックエンドを使用しているときにこのヘルパーを実行すると、OpenGLの十分に新しいバージョンと、要求された場合のマルチサンプリングのサポートをテストします。通常、Qt Quick 、OpenGL 2.0またはOpenGL ES 2.0のコンテキストを要求します。これは、Qt Quick 3Dを使用するときに利用できる機能を制限してしまうため、より高性能なコンテキストを要求するための特別なステップが必要です。
正しい使用パターンは、QQuick3D::idealSurfaceFormat によって返されたQSurfaceFormat を設定するためにQSurfaceFormat::setDefaultFormat を呼び出すことです。このメソッドは、QGuiApplication が構築された後、Qt Quick アプリケーション・コンテンツがロードされる前に呼び出されることが重要です。このコード・スニペットは、正しい使用パターンを示しています:
#include <QGuiApplication> #include <QQmlApplicationEngine> #include <QtGui> #include <QtQuick3D/qquick3d.h> int main(int argc, char *argv[]) { QGuiApplication app(argc, argv); QSurfaceFormat::setDefaultFormat(QQuick3D::idealSurfaceFormat(4)); QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); if (engine.rootObjects().isEmpty()) return -1; return app.exec(); }
メンバ関数ドキュメント
[static]
QSurfaceFormat QQuick3D::idealSurfaceFormat(int samples = -1)
プラットフォームに最適なサーフェスフォーマットを返す。オプションで、アンチエイリアシングのためのマルチサンプル数を選択するためにsamples を指定することができる。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.