QShaderVersion Class
シェーディング言語のバージョンを指定します。詳細...
Header: | #include <QShaderVersion> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
Since: | Qt 6.6 |
パブリック型
パブリック関数
QShaderVersion() | |
QShaderVersion(int v, QShaderVersion::Flags f = Flags()) | |
QShaderVersion::Flags | flags() const |
void | setFlags(QShaderVersion::Flags f) |
void | setVersion(int v) |
int | version() const |
関連する非メンバー
bool | operator!=(const QShaderVersion &lhs, const QShaderVersion &rhs) |
bool | operator<(const QShaderVersion &lhs, const QShaderVersion &rhs) |
bool | operator==(const QShaderVersion &lhs, const QShaderVersion &rhs) |
詳細説明
SPIR-VやMetal Shading Languageのような言語では伝統的なバージョン番号を使用しますが、他のAPI用のシェーダではわずかに異なるバージョン管理方式を使用することができます。しかし、ここではそれらすべてが1つのバージョン番号にマッピングされています。HLSLの場合、バージョンは5.0、5.1、6.0のようにシェーダーモデルのバージョンを指します。GLSLの場合は、GLSLとGLSL/ESを選択するために追加のフラグが必要です。
以下は、異なるグラフィックスAPI用のシェーダーバージョンの最も一般的な例のリストです:
- Vulkan (SPIR-V):100
- OpenGL: 120、330、440など。
- OpenGL ES: 100(GlslEs )、300(GlslEs )など。
- Direct3D: 50、51、60
- メタル:12、20
デフォルトの QShaderVersion は 100 で、フラグは設定されていません。
注意: これは互換性保証に制限のある RHI API です。詳細はQShader を参照してください。
メンバ型ドキュメント
enum QShaderVersion::Flag
flags QShaderVersion::Flags
設定可能なフラグを記述します。
定数 | 値 | 説明 |
---|---|---|
QShaderVersion::GlslEs | 0x01 | GLSL/ESがGlslShaderとの組み合わせを意味することを示す。 |
Flags 型はQFlags<Flag> の typedef である。Flag 値の OR の組み合わせを格納する。
メンバ関数ドキュメント
[constexpr noexcept]
QShaderVersion::QShaderVersion()
QShaderVersion::QShaderVersion(int v, QShaderVersion::Flags f = Flags())
バージョンv とフラグf を持つ新しい QShaderVersion を構築する。
QShaderVersion::Flags QShaderVersion::flags() const
フラグを返します。
setFlags()も参照してください 。
void QShaderVersion::setFlags(QShaderVersion::Flags f)
fフラグを設定します。
flags() も参照して ください。
void QShaderVersion::setVersion(int v)
シェーディング言語バージョンをv に設定します。
version()も参照 。
int QShaderVersion::version() const
バージョンを返します。
setVersion()も参照して ください。
関連する非メンバー
[noexcept]
bool operator!=(const QShaderVersion &lhs, const QShaderVersion &rhs)
2 つのQShaderVersion オブジェクトlhs とrhs の値が等しい場合はfalse
を返し、そうでない場合はtrue
を返します。
[noexcept]
bool operator<(const QShaderVersion &lhs, const QShaderVersion &rhs)
lhs がrhs よりも小さい場合は真を返す。
2つのQShaderVersion lhs とrhs の間のソート順を確立する。
[noexcept]
bool operator==(const QShaderVersion &lhs, const QShaderVersion &rhs)
2つのQShaderVersion オブジェクトlhs とrhs が等しい場合はtrue
を返します。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。