Qt Quick Particles Exemples - Particules d'image

Voici une série d'exemples utilisant les Affecteurs dans le système de particules QML.

Des particules stellaires colorées aux nuances arc-en-ciel rayonnant depuis un centre lumineux

Il s'agit d'une collection de petits exemples QML relatifs à l'utilisation des « Affectors » dans le système de particules. Chaque exemple est un petit fichier QML mettant en avant un type ou une fonctionnalité particulière.

« All at once » présente simultanément plusieurs fonctionnalités d’ ImageParticle.

sprites: [
    Sprite {
        name: "bear"
        source: "images/bear_tiles.png"
        frameCount: 13
        frameDuration: 120
    }
]
colorVariation: 0.5
rotationVelocityVariation: 360
colorTable: "images/colortable.png"

« Colored » présente un « ImageParticle » simple avec quelques variations de couleur.

ImageParticle {
    anchors.fill: parent
    source: "qrc:///particleresources/star.png"
    alpha: 0
    alphaVariation: 0.2
    colorVariation: 1.0
}

« Color Table » définit la couleur des particules en fonction de leur durée de vie afin de créer un effet arc-en-ciel fixe.

source: "qrc:///particleresources/glowdot.png"
colorTable: "images/colortable.png"
sizeTable: "images/colortable.png"

« Deformation » fait tourner et déforme une particule en forme d’étoile de mer.

ImageParticle {
    system: sys
    groups: ["goingLeft", "goingRight"]
    source: "images/starfish_4.png"
    rotation: 90
    rotationVelocity: 90
    autoRotation: true
}
ImageParticle {
    system: sys
    groups: ["goingDown"]
    source: "images/starfish_0.png"
    rotation: 180
    yVector: PointDirection { y: 0.5; yVariation: 0.25; xVariation: 0.25; }
}

« Rotation » illustre la propriété `autoRotate`, grâce à laquelle les particules tournent dans le sens de leur déplacement.

« Sharing » montre ce qui se passe lorsque plusieurs ImageParticles tentent de rendre la même particule. L'ImageParticle suivante rend les particules à l'intérieur de l'ListView:

ImageParticle {
    anchors.fill: parent
    system: particles
    source: "images/flower.png"
    alpha: 0.1
    color: "white"
    rotationVariation: 180
    z: -1
}

L’ ImageParticle suivante est placée à l’intérieur de la liste en surbrillance et affiche les particules au-dessus des autres ImageParticle.

ImageParticle {
    anchors.fill: parent
    system: particles
    source: "images/flower.png"
    color: "red"
    clip: true
    alpha: 1.0
}

Notez que, comme cette ImageParticle définit la couleur et la transparence, elle affiche les particules dans une couleur différente. Comme elle ne spécifie rien concernant la rotation, elle partage la rotation avec l’autre ImageParticle, de sorte que les fleurs tournent de la même manière dans les deux cas. Notez que vous pouvez annuler la rotation dans une autre ImageParticle: il suffit de définir explicitement rotationVariation sur 0.

La section « Sprites » montre comment utiliser une particule image pour afficher des sprites animés plutôt que des images statiques pour chaque particule.

Exemple de projet sur code.qt.io

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