Qtシェーダーツール
Qt Shader Toolsモジュールは、Khronos SPIR-VのWebサイトで説明されているSPIR-Vオープンソースエコシステムをベースにしています。
Qt シェーダー・コンディショニング・システムの主なコンポーネントは以下の通りです:
qsb
コマンドラインツールqsb
ツールの CMake インテグレーション- QShader ( モジュールの一部)QtGui
- QShaderBaker (このモジュールの一部、 ツールに相当するライブラリ)
qsb
記事とガイド
C++ API
GLSL/VulkanシェーダーをSPIR-Vにコンパイルし、他のシェーディング言語に翻訳し、リフレクションメタデータを収集します。 |
注: アプリケーションやライブラリは、そうする正当な理由がない限り、C++ APIを直接使用することは避けるべきです。むしろ、ビルド時にqsb
コマンドラインツールを CMake 経由で呼び出すか、CMake 経由で呼び出すことが不可能な場合は手動で呼び出すなどして、オフラインのプリプロセッシングに頼ることをお勧めします。qsb
ツールはQShaderBaker を使用し、生成されたQShader のシリアライズ・バージョンをファイルに書き込みます。C++ APIの使用は、実行時の処理と変換が避けられず、パフォーマンスへの影響が理解できる場合に限定すべきである。この例としては、ユーザーが提供した、または動的に生成されたシェーダー・ソース文字列を扱うアプリケーションが挙げられます。
ライセンスと帰属
Qt Shader Toolsランタイムライブラリは、The Qt Companyから商用ライセンスで入手できます。また、フリーソフトウェアライセンスでも利用可能です。Qt 6.3以降、これらのフリー・ソフトウェア・ライセンスはGNU Lesser General Public License, version 3またはGNU General Public License, version 2です。
qsb
コマンドラインツールは、The Qt Company から商用ライセンスで入手できます。また、GNU General Public License, version 3でも利用可能です。
詳細はQt ライセンスを参照してください。
さらに、6.8.1 の Qt Shader Tools には、以下の寛容なライセンスの下、サードパーティのモジュールが含まれている可能性があります:
SPIRV-Cross, version 2d990d355a296ae1e368585810f884ebadcc4773 | Apache License 2.0 および MIT Khronos - 旧バリアント |
BSD 3-Clause "New" or "Revised" License, and MIT Khronos - old variant, and Apache License 2.0, and GNU General Public License v3.0 or later with Bison exception 2.2, and AML glslang variant License。 |
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。