Spec-Zone.ru › Qt 5.6

Тип QML UniformAnimator

Тип UniformAnimator анимирует униформ ShaderEffect. Подробнее...

Заявление об импорте: import QtQuick 2.5
С тех пор: Qt 5.2
Наследует:

Animator

  • Список всех членов, включая унаследованные

Свойства

  • uniform : строка

Подробное описание

Animator — это типы, отличающиеся от обычных типов анимации. При использовании Animator анимация может выполняться в потоке рендеринга, а значение свойства переходит к концу при завершении анимации.

Значение свойства QML, определяющего униформ, обновляется после завершения анимации.

Следующий фрагмент демонстрирует, как использовать UniformAnimator вместе с элементом ShaderEffect.

ShaderEffect {
    id: shader
    width: 50
    height: 50
    property variant t;
    UniformAnimator {
        target: shader
        uniform: "t"
        from: 0
        to: 1
        duration: 1000
        running: true
    }
    fragmentShader:
    "
        uniform lowp float t;
        varying highp vec2 qt_TexCoord0;
        void main() {
            lowp float c = qt_TexCoord0.y;
            gl_FragColor = vec4(0, 0, c * t, 1);
        }
    "
}

Также можно использовать ключевое слово on для непосредственной привязки UniformAnimator к униформу экземпляра ShaderEffect.

ShaderEffect {
    width: 50
    height: 50
    property variant t;
    UniformAnimator on t {
        from: 0
        to: 1
        duration: 1000
    }
    fragmentShader:
    "
        uniform lowp float t;
        varying highp vec2 qt_TexCoord0;
        void main() {
            lowp float c = qt_TexCoord0.y;
            gl_FragColor = vec4(c * t, 0, 0, 1);
        }
    "
}

См. также ShaderEffect и ShaderEffectSource.

Документация по свойствам

uniform : строка

Это свойство содержит имя униформа, который необходимо анимировать.

Значение униформа должно соответствовать свойству целевого ShaderEffect и должно быть униформом типа float в фрагментном или вершинном шейдере.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qml-qtquick-uniformanimator.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API