オープンソースで始めよう
概要
Kuesa Runtimeは、Qt3D用のモジュールです。
|
Kuesa Studio は、Kuesaのデザイナー向けモジュールです。以下のものを提供しています。
|
要件
注: このリポジトリにはgit-lfs サポートが必要 です。
Kuesaランタイムには、Qt 5.12.8、Qt 5.14.2、またはQt5.15のQt3Dが必要です。
注: すべての機能がQt5.12.8で機能しているわけではありません。
Qt 3Dには、オプションの側面(アニメーション、ロジック)の実行を妨げるリグレッションがあります。
これを修正するためには以下を参照してください。
https://codereview.qt-project.org/c/qt/qt3d/+/297123
- Qt5.12.8をダウンロードしてインストールします
- クローンQt3D:git clone [email protected]:qt / qt3d.git
- 5.12ブランチに移動します:git checkout -t origin / 5.12
- Qtセットアップでコンソールを開きます(Qtと一緒にインストールする必要があります)
- Qt3Dディレクトリに移動し、次のように入力します。qmake&& make --j4 && make install(または、Windowsではqmake; jom; jom install)
ハードウェア:
1 デスクトップ
OpenGL 3.2をサポートするもの(またはそれ以降)のもので十分です。
現在サポートされているオペレーティングシステムは次のとおりです。
- Linux
- ウィンドウズ
- Mac OS
2.組み込み
Kuesaが正常にテストされたチップセット/デバイスのリストは次のとおりです。
- Apple iPad 5(PowerVR GT7600)
- Apple iPhone 7
- OnePlus 3T(Android、Qualcolmm Snapdragon 821 / Adreno 430)
- NVidia Tegra K1(組み込みLinux)
- iMX8(組み込みLinux)
OpenGL ES 3.1以下がサポートされていますが、使用可能なOpenGL拡張機能に応じて機能セットが制限されています。
- HDRをサポートするには、GL_OES_texture_half_floatが必要です
- アンチエイリアシングのために、ARB_texture_multisampleとGL_EXT_color_buffer_half_floatが必要とされています
Dependencies オプショナル
Kuesaはオプションとして組み込みバージョン、またはシステム上のバージョンのDraco mesh compression library を使用することができます。Dracoを使用すると、glTFファイルのサイズを大幅に減らすことができます。
Kuesaはここに定義されている KHR_draco_mesh_compression glTF拡張をサポートしています。
デフォルトでは、Kuesaはドラコライブラリの独自の組み込みバージョンで構築されます。
これは次のように実施できます:
qmake kuesa.pro --- draco = qt
DracoをサポートせずにKuesaをビルドするには、次のようにqmakeを実行します。
qmakekuesa.pro--- draco = no
外部バージョンのKuesaをビルドするには、次のようにqmakeを実行します:
qmake kuesa.pro --- draco = system
Dracoがシステムのデフォルトの場所にインストールされていない場合は、DracOSDK環境変数を設定してDracoがインストールされている場所を指すようにすることができます。DRACOSDK_LIBS環境変数を使用して、Dracoライブラリを含むフォルダーをポイントします。
Kuesaはコミット8833cf878e6fd43c5a3fd6e4231212e25e25e632でDracoで最後にテストされていることに注意してください。
Kuesaで提供されるglTFエディターは、Dracoを使用して既存のglTF2.0アセットを圧縮できます。
Kuesaはオプションとして組み込みバージョン、またはシステム上のバージョンのDraco mesh compression library を使用することができます。Dracoを使用すると、glTFファイルのサイズを大幅に減らすことができます。
Kuesaはここに定義されている KHR_draco_mesh_compression glTF拡張をサポートしています。
デフォルトでは、Kuesaはドラコライブラリの独自の組み込みバージョンで構築されます。
これは次のように実施できます:
qmake kuesa.pro --- draco = qt
DracoをサポートせずにKuesaをビルドするには、次のようにqmakeを実行します。
qmakekuesa.pro--- draco = no
外部バージョンのKuesaをビルドするには、次のようにqmakeを実行します:
qmake kuesa.pro --- draco = system
Dracoがシステムのデフォルトの場所にインストールされていない場合は、DracOSDK環境変数を設定してDracoがインストールされている場所を指すようにすることができます。DRACOSDK_LIBS環境変数を使用して、Dracoライブラリを含むフォルダーをポイントします。
Kuesaはコミット8833cf878e6fd43c5a3fd6e4231212e25e25e632でDracoで最後にテストされていることに注意してください。
Kuesaで提供されるglTFエディターは、Dracoを使用して既存のglTF2.0アセットを圧縮できます。
コンポーネント
Kuesaランタイムの構成は次のとおりです。
Kuesaランタイムの構成は次のとおりです。
- コアクラスを備えたQtモジュール
- QMLプラグイン
- 選択カメラやアニメーションなどのプレビューglTF 2.0ファイルへgltfViewerツール、
インストール
KuesaはQtのモジュールとして構築するとQtと一緒にインストールされます。主な利点は、インストール後、プロジェクトでKuesaを使用するのは、プロジェクトファイルにQT + = kuesaを追加するのと同じくらい簡単なことです。欠点は、Qt自体の構築にまだ慣れていない場合、ソースからKuesaを構築するのが少し複雑になる可能性があることです。
注:ソースからQtをビルドする必要はありません。プリインストールされているバージョンのQtに対してKuesaをビルドすると問題なく動作するはずです。
ただし、モジュールをビルドするということは、ソースからQtをビルドするときに適用される依存関係と同様の依存関係がKuesaにあることを意味します(ソースからQtをビルドする方法の説明は ここにあります)。特に:
qmake
make
make install
examples をビルドしない場合:
make sub-examples
cd examples
make install
Qt Creator templateをインストールするには、kuesaフォルダ全体をtools/qtc_templatesから、Qt Creator install location内のTemplates/wizardsフォルダにコピーします。
KuesaはQtのモジュールとして構築するとQtと一緒にインストールされます。主な利点は、インストール後、プロジェクトでKuesaを使用するのは、プロジェクトファイルにQT + = kuesaを追加するのと同じくらい簡単なことです。欠点は、Qt自体の構築にまだ慣れていない場合、ソースからKuesaを構築するのが少し複雑になる可能性があることです。
注:ソースからQtをビルドする必要はありません。プリインストールされているバージョンのQtに対してKuesaをビルドすると問題なく動作するはずです。
ただし、モジュールをビルドするということは、ソースからQtをビルドするときに適用される依存関係と同様の依存関係がKuesaにあることを意味します(ソースからQtをビルドする方法の説明は ここにあります)。特に:
- perlをインストールしてPATHに含める必要があります
- githubからアーカイブとしてKuesaをダウンロードした場合は、kuesaソースディレクトリのルートに空の.gitフォルダーを作成する必要があります。
qmake
make
make install
examples をビルドしない場合:
make sub-examples
cd examples
make install
Qt Creator templateをインストールするには、kuesaフォルダ全体をtools/qtc_templatesから、Qt Creator install location内のTemplates/wizardsフォルダにコピーします。
サードパーティ
Kuesaには、以下のサードパーティのソフトウェアを使用しています。
サードパーティ
Kuesaには、以下のサードパーティのソフトウェアを使用しています。
Kuesaには、以下のサードパーティのソフトウェアを使用しています。
- Qtの5.12以降、LGPLv3の下でライセンス www.qt.io
- Draco:Apache License 2.0の下でライセンスされ、Google Inc.によって作成されました。https://github.com/google/draco
- MikkTSpace:カスタムライセンス下でライセンスされ Morten S. Mikkelsenによって書かれました。http://mmikkelsen3d.blogspot.com/
サードパーティ
Kuesaには、以下のサードパーティのソフトウェアを使用しています。
- Qtの5.12以降、LGPLv3の下でライセンス www.qt.io
- Draco、Apache License 2.0の下でライセンスされ、GoogleInc。によって作成されました 。https://github.com/google/draco
- MikkTSpace、カスタムライセンスの下でライセンスさとモートンS.ミケルセンが執筆 http://mmikkelsen3d.blogspot.com/
Pythonバインディング
PySide 2に基づいてpythonバインディングが利用可能です。src/pythonにてビルド手順を、examples/kuesa/pythonにてサンプルアプリケーションを確認してください。
PySide 2に基づいてpythonバインディングが利用可能です。src/pythonにてビルド手順を、examples/kuesa/pythonにてサンプルアプリケーションを確認してください。
サポート
問題がある場合こちらにお願いします。 ここ
KDABは外部からのコントリビューションを歓迎します。ただし、 すべての コントリビューションには、署名されたコントリビューターライセンス契約が必要です。
問題がある場合こちらにお願いします。 ここ
KDABは外部からのコントリビューションを歓迎します。ただし、 すべての コントリビューションには、署名されたコントリビューターライセンス契約が必要です。