GridMesh QML Type

頂点が格子状に配置されたメッシュを定義する。詳細...

Import Statement: import QtQuick

プロパティ

詳細説明

GridMeshは、頂点が等間隔に格子状に配置された長方形のメッシュを定義します。これはgeometry を生成するために使用されます。グリッドの解像度はresolution プロパティで指定します。

プロパティの説明

resolution : size

このプロパティはグリッド解像度を保持します。解像度の幅と高さは、それぞれ水平方向と垂直方向のセル数または頂点間の間隔を指定します。最小値およびデフォルト値は 1x1 で、これは各コーナーに 1 つずつ、合計 4 つの頂点に対応する。非線形の頂点変換の場合、おそらく解像度を高く設定したいだろう。

結果QMLコードgridmesh.vert

import QtQuick 2.0

ShaderEffect {
    width: 200
    height: 200
    mesh: GridMesh {
        resolution: Qt.size(20, 20)
    }
    property variant source: Image {
        source: "qt-logo.png"
        sourceSize { width: 200; height: 200 }
    }
    vertexShader: "gridmesh.vert"
}
#version 440
layout(location = 0) in vec4 qt_Vertex;
layout(location = 1) in vec2 qt_MultiTexCoord0;
layout(location = 0) out vec2 qt_TexCoord0;
layout(std140, binding = 0) uniform buf {
    mat4 qt_Matrix;
    float qt_Opacity;
    float width;
};
void main() {
    vec4 pos = qt_Vertex;
    float d = 0.5 * smoothstep(0.0, 1.0, qt_MultiTexCoord0.y);
    pos.x = width * mix(d, 1.0 - d, qt_MultiTexCoord0.x);
    gl_Position = qt_Matrix * pos;
    qt_TexCoord0 = qt_MultiTexCoord0;
}

©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。