Qt Quick 3D
Qt Quick 3D は、Qt Quick をベースに 3D コンテンツや 3D ユーザーインターフェースを作成するためのハイレベルな API を提供します。Qt Quick 3D は、同期の問題や抽象化のレイヤーを追加する外部エンジンを使用するのではなく、既存のQt Quick Scene Graphsを空間コンテンツ用に拡張し、その拡張シーングラフ用のレンダラーを提供します。空間シーングラフを使用すると、Qt Quick 2Dコンテンツと3Dコンテンツを混在させることができます。
Qt Quick 3D はQt Quick 3D Xr で XR や VR アプリケーションも提供します。
モジュールの使用
QML API
モジュールの QML タイプはQtQuick3D
のインポートから利用できます。型を使用するには、.qml ファイルに以下の import 文を追加してください:
import QtQuick3D
以下のモジュールのインポートは、追加機能を提供します:
import QtQuick3D.AssetUtils import QtQuick3D.Helpers import QtQuick3D.Particles3D import QtQuick3D.Xr
C++ API
Qt モジュールの C++ API を使用するには、モジュール・ライブラリに対して直接、または他の依存関係を通 じてリンクする必要があります。CMakeや qmakeなど、いくつかのビルドツールはこのための専用サポートを持っています。
CMake でのビルド
find_package()
コマンドを使って、Qt6
パッケージの中から必要なモジュール・コンポーネントを探します:
find_package(Qt6 REQUIRED COMPONENTS Quick3D)
target_link_libraries(mytarget PRIVATE Qt6::Quick3D)
詳細については、CMakeによるビルドの概要を参照してください。
qmakeでのビルド
モジュールをqmakeでビルドするように設定するには、プロジェクトの.proファイルにQT
変数の値としてモジュールを追加します:
QT += quick3d
ソースからのビルド
ソースからビルドする場合、qtdeclarativeとqtshadertoolsリポジトリのモジュールとツールが最初にビルドされていることを確認してください。qtquicktimeline が利用可能であることも強く推奨します。そうしないと、キーフレームベースのアニメーションが利用できません。
さらに、いくつかのサンプルはQt Quick Controls に依存しています。
モジュールの進化
Qt Quick 3D の変更点には、Qt 6 シリーズの Qt で行われたモジュール API と機能の重要な変更が記載されています。
記事とガイド
- Qt Quick 3D 導入の例
- Qt Quick 3D イントロダクションと glTF アセット
- Qt Quick 3D グラフィックス要件
- Qt Quick 3D アーキテクチャ
- バルサムアセットインポートツール
- 3D アセットの最適化
- 物理ベースのレンダリング
- イメージベースの照明の使用
- アンチエイリアシングのベストプラクティス
- 2DコンテンツによるQt Quick 3Dシーン
- プログラム可能なマテリアル、エフェクト、ジオメトリ、テクスチャデータ
- ビルドタイム マテリアル
- スケルトンアニメーション
- モーフィングアニメーション
- インスタンスレンダリング
- 詳細レベル
- カスタムマテリアルエディタ
- ライトマップとグローバルイルミネーション
- シャドウマッピング
- Qt Quick 3D Xr
- マルチビューレンダリング
例題
- はじめに
- 複数のビューポートを持つView3D
- ライトとシャドウ
- 動的モデルの作成
- 原則的なマテリアル
- 内蔵エフェクトとトーンマッピング
- 3D シーン内の Qt Quick アイテム
- カスタムマテリアル
- シェーディングされていないカスタムマテリアル
- カスタム後処理エフェクトの記述
- C++からのカスタムジオメトリの追加
- C++からカスタムテクスチャデータを追加する
- ベイクドライトマップの使用
- 簡単なVRシーンのセットアップを実演
- VRにおけるコントローラー入力のデモンストレーション
- VRにおける空間アンカーのデモ
- すべての例
リファレンス
- Qt Quick 3D QML Types
- Qt Quick 3D C++ Classes
- Qt Quick 3D Helpers QML Types
- Qt Quick 3D Asset Utility QML Types
- Qt Quick 3D Particles3D QML Types
- Qt クイック 3D Xr
関連モジュール
Qt アカデミーコース
- Qt Quick 3D: アニメーション
- Qt Quick 3D: アセットとリソース
- Qt Quick 3D: カスタムマテリアル、レンダリング設定、ポストプロセス
- Qt Quick 3D: インタラクションとパフォーマンス管理
- Qt Quick 3D: ライティングとカメラ
- Qt Quick 3D: ビュー、シーン、ノード
ライセンスと使用許諾
Qt Quick 3D は、The Qt Company の商用ライセンスの下で利用可能です。また、GNU General Public License, version 3 の下でも利用可能です。詳細はQt ライセンスをご覧ください。
さらに、Qt Quick 3Dは以下のライセンスでサードパーティモジュールを含む可能性があります:
MITライセンス | |
MITライセンス | |
Apache ライセンス 2.0 | |
MITライセンス | |
MIT ライセンス | |
BSD 3条項「新規」または「改訂」ライセンス | |
Apache ライセンス 2.0 | |
BSD 3条項「新規」または「改訂」ライセンス | |
MITライセンス | |
MIT ライセンス |
©2024 The Qt Company Ltd. ここに含まれる文書の著作権はそれぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。