The Qt Shader Tools module builds on the SPIR-V Open Source Ecosystem as described at the Khronos SPIR-V web site .
The main components of the Qt shader conditioning system are:
qsb
命令行工具
qsb
tool
qsb
工具)
Compiles a GLSL/Vulkan shader into SPIR-V, translates into other shading languages, and gathers reflection metadata |
注意:
Applications and libraries should avoid using the C++ API directly, unless they have a good reason to do so. Rather, prefer relying on offline pre-processing by invoking the
qsb
command-line tool at build time via CMake, or manually if invoking via CMake is not feasible. The
qsb
tool uses
QShaderBaker
and writes the serialized version of the generated
QShader
into a file. The usage of the C++ API should be restricted to cases where run time processing and translation cannot be avoided, and the performance implications are understood. An example of this are applications that work with user-provided or dynamically generated shader source strings.
Qt Shader Tools runtime library is available under commercial licenses from Qt 公司 . In addition, it is available under free software licenses. Since Qt 6.3, these free software licenses are GNU LGPL (次一般公共许可) 第 3 版 ,或 GNU GPL (一般公共许可) 第 2 版 .
The
qsb
command-line tool is available under commercial licenses from
Qt 公司
。此外,它是可用的根据
GNU GPL (一般公共许可) 第 3 版
.
见 Qt 许可 进一步了解细节。
Furthermore, Qt Shader Tools in 6.7.2 may contain third party modules under following permissive licenses:
Apache 许可 2.0 和 Khronos 许可 | |
BSD 3-Clause "New" or "Revised" License, and Khronos License, and Apache License 2.0, and GNU General Public License v3.0 or later with Bison exception 2.2, and AML glslang variant License |