Qt 3D
Qt 3D では、Qt C++およびQt Quick アプリケーションの両方において、2Dおよび3Dレンダリングに対応した、ニアリアルタイムシミュレーションシステム向けの機能を提供しています。
Qt 3D の機能は、以下のC++モジュールに分かれています:
以下のC++モジュールは現在開発中ですが、テクノロジープレビューとして利用可能です:
Qt Quick アプリケーション向けに、Qt 3D は以下のQMLモジュールを提供しています:
以下の QML モジュールは現在開発中ですが、テクノロジープレビューとして利用可能です:
モジュールの使用方法
2D または 3D レンダリング、衝突検出、およびユーザー入力の処理を行う C++ アプリケーションでは、モジュールのクラスに対して以下のディレクティブを含めます:
#include <Qt3DCore>
#include <Qt3DRender>
#include <Qt3DInput>
#include <Qt3DLogic>
#include <Qt3DExtras>
#include <Qt3DAnimation>QML タイプをアプリケーションにインポートするには、.qml ファイルで次のインポート文を使用します:
import Qt3D.Core
import Qt3D.Render
import Qt3D.Input
import Qt3D.Logic
import Qt3D.Extras
import Qt3D.Animation
import QtQuick.Scene2D
import QtQuick.Scene3DQtモジュールのC++ APIを使用するには、モジュールライブラリに対して、直接または他の依存関係を通じてリンクを行う必要があります。CMakeやqmakeなど、いくつかのビルドツールにはこのための専用のサポートが用意されています。
CMake を使用したビルド
find_package() コマンドを使用して、Qt6 パッケージ内の必要なモジュールコンポーネントを特定します:
find_package(Qt6 REQUIRED COMPONENTS
3DCore
3DRender
3DInput
3DLogic
3DExtras
3DAnimation
)
target_link_libraries(mytarget PRIVATE
Qt6::3DCore
Qt6::3DRender
Qt6::3DLogic
Qt6::3DExtras
Qt6::3DAnimation
)qmake を使用したビルド
qmake を使用してモジュールをビルドするように設定するには、プロジェクトの .pro ファイル内の `QT ` 変数にモジュールを追加します:
QT += 3dcore 3drender 3dinput 3dlogic 3dextras 3danimationQt Quick アプリケーションには、以下の追加の依存関係が必要です:
QT += 3dcore 3drender 3dinput 3dlogic 3dextras 3danimation qml quick 3dquick概要
Qt 3D の全体的な設計と開発の背景については、「Qt 3D の概要」に記載されています。Qt 3D Renderは、「Qt 3D Render Framegraph」に記載されているように、データ駆動型構成をサポートしています。
参考
Qt 3D 対応プラットフォーム
Qt 3D 以下のプラットフォームに対応しています:
- Microsoft Windows (win32) - 対応
- Linux X11 - 対応
- macOS - サポートされていますが、Retinaディスプレイのスケーリングに若干の問題が生じる場合があります
- Android - 対応
- 組み込みLinux - 対応
- iOS - (Qt 5.7)以降対応
- WinRT - まだ対応していません
モジュールの変遷
「Qt3Dの変更点」では、Qt 6シリーズに向けて行われた、モジュールのAPIおよび機能に関する重要な変更点をまとめています。
ライセンスおよび帰属表示
Qt 3D は、The Qt Company からの商用ライセンスの下で提供されています。さらに、GNU Lesser General Public License バージョン 3 またはGNU General Public License バージョン 2 の下でも利用可能です。詳細については、「Qt ライセンス」を参照してください。
さらに、Qt 3D には、以下の寛容なライセンスの下で提供されるサードパーティ製モジュールが含まれています:
MITライセンス | |
MITライセンスまたはパブリックドメイン | |
MITライセンス | |
BSD 3条項「New」または「Revised」ライセンス |
© 2026 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.