QShaderVersion Class
Especifica la versión del lenguaje de sombreado. Más...
| Cabecera: | #include <QShaderVersion> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| Desde: | Qt 6.6 |
Tipos Públicos
Funciones Públicas
| QShaderVersion() | |
| QShaderVersion(int v, QShaderVersion::Flags f = Flags()) | |
| QShaderVersion::Flags | flags() const |
| void | setFlags(QShaderVersion::Flags f) |
| void | setVersion(int v) |
| int | version() const |
No miembros relacionados
| bool | operator!=(const QShaderVersion &lhs, const QShaderVersion &rhs) |
| bool | operator<(const QShaderVersion &lhs, const QShaderVersion &rhs) |
| bool | operator==(const QShaderVersion &lhs, const QShaderVersion &rhs) |
Descripción detallada
Mientras que lenguajes como SPIR-V o Metal Shading Language utilizan números de versión tradicionales, los shaders para otras APIs pueden utilizar esquemas de versionado ligeramente diferentes. Sin embargo, aquí todos ellos se asignan a un único número de versión. Para HLSL, la versión se refiere a la versión del modelo de sombreado, como 5.0, 5.1 o 6.0. Para GLSL se necesita una bandera adicional para elegir entre GLSL y GLSL/ES.
A continuación se muestra una lista con los ejemplos más comunes de versiones de shaders para diferentes APIs gráficas:
- Vulkan (SPIR-V): 100
- OpenGL: 120, 330, 440, etc.
- OpenGL ES: 100 con GlslEs, 300 con GlslEs, etc.
- Direct3D: 50, 51, 60
- Metal: 12, 20
Un QShaderVersion construido por defecto contiene una versión de 100 y ninguna bandera establecida.
Nota: Esta es una API RHI con garantías de compatibilidad limitadas, ver QShader para más detalles.
Documentación de tipos de miembros
enum QShaderVersion::Flag
flags QShaderVersion::Flags
Describe las banderas que se pueden establecer.
| Constante | Valor | Descripción |
|---|---|---|
QShaderVersion::GlslEs | 0x01 | Indica que GLSL/ES se entiende en combinación con GlslShader |
El tipo Flags es un typedef para QFlags<Flag>. Almacena una combinación OR de valores Flag.
Documentación de Funciones Miembro
[constexpr noexcept] QShaderVersion::QShaderVersion()
QShaderVersion::QShaderVersion(int v, QShaderVersion::Flags f = Flags())
Construye un nuevo QShaderVersion con la versión v y las banderas f.
QShaderVersion::Flags QShaderVersion::flags() const
Devuelve las banderas.
Véase también setFlags().
void QShaderVersion::setFlags(QShaderVersion::Flags f)
Establece las banderas f.
Véase también flags().
void QShaderVersion::setVersion(int v)
Establece la versión del lenguaje de sombreado en v.
Véase también version().
int QShaderVersion::version() const
Devuelve la versión.
Véase también setVersion().
Relacionados No miembros
[noexcept] bool operator!=(const QShaderVersion &lhs, const QShaderVersion &rhs)
Devuelve false si los valores de los dos objetos QShaderVersion lhs y rhs son iguales; en caso contrario devuelve true.
[noexcept] bool operator<(const QShaderVersion &lhs, const QShaderVersion &rhs)
Devuelve true si lhs es menor que rhs.
Establece un orden de clasificación entre los dos QShaderVersion lhs y rhs.
[noexcept] bool operator==(const QShaderVersion &lhs, const QShaderVersion &rhs)
Devuelve true si los dos objetos QShaderVersion lhs y rhs son iguales.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.