Qtシェーダツール

Qt Shader Toolsモジュールは、Khronos SPIR-VのWebサイトで説明されているSPIR-Vオープンソースエコシステムをベースにしています。

Qt シェーダー・コンディショニング・システムの主なコンポーネントは以下の通りです:

  • qsb コマンドラインツール
  • qsb ツールの CMake インテグレーション
  • QShader ( モジュールの一部)QtGui
  • QShaderBaker (このモジュールの一部、 ツールに相当するライブラリ)qsb

記事とガイド

C++ API

QShaderBaker

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.0 の Qt Shader Tools には、以下の許諾ライセンスのもと、サードパーティモジュールが含まれている可能性があります:

SPIRV-Cross, version 2d990d355a296ae1e368585810f884ebadcc4773

Apache License 2.0 および MIT Khronos - 旧バリアント

glslang, version 14.2.0

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.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。