QShaderVersion Class

シェーディング言語のバージョンを指定します。詳細...

ヘッダー #include <QShaderVersion>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
以来:Qt 6.6

パブリックな型

enum Flag { GlslEs }
flags Flags

パブリック関数

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::GlslEs0x01GLSL/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 オブジェクトlhsrhs の値が等しい場合はfalse を返し、そうでない場合はtrue を返す。

[noexcept] bool operator<(const QShaderVersion &lhs, const QShaderVersion &rhs)

lhsrhs より小さい場合に真を返す。

2 つのQShaderVersion lhsrhs の間のソート順を確立する。

[noexcept] bool operator==(const QShaderVersion &lhs, const QShaderVersion &rhs)

2つのQShaderVersion オブジェクトlhsrhs が等しい場合、true を返す。

© 2025 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.