Revision control

++ // Copyright (C) 2022 The Qt Company Ltd.
++ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
++
++ import QtQuick
++ import QtQuick3D
++ import QtQuick3D.Particles3D
++ import QtQuick3D.Helpers
++
++
++ Node {
++ id: root
++ property alias emitterPosition : emitter.position
++ property alias emitterScale : emitter.scale
++ property alias emitRate : emitter.emitRate
++ property alias particleCount : particle.maxAmount
++ property real particleOpacity : 1.0
++ property bool textureEnabled : false
++ property bool variableLengthEnabled : false
++ property alias lineSegmentCount : particle.segmentCount
++ property alias particleScale : particle.particleScale
++ property alias particleTexcoordMode : particle.texcoordMode
++ property alias particleTexcoordScale : particle.texcoordMultiplier
++ property alias particleEolFadeDuration : particle.eolFadeOutDuration
++ property real lineLength : 50.0
++ property alias lifespan : emitter.lifeSpan
++ property real velocityX : 120.0
++ property real velocityY : 0.0
++ property real velocityZ : 0.0
++ property real velocityVariation : 5.0
++ property var system
++ property string description : "desc"
++ property real fontSize : 14.0
++ property alias fadeOutDuration : particle.fadeOutDuration
++ property alias fadeInDuration : particle.fadeInDuration
++
++ ParticleEmitter3D {
++ id: emitter
++ system: root.system
++ Texture {
++ id: tex
++ source: "images/qt_logo.png"
++ }
++ particle: LineParticle3D {
++ id: particle
++ sprite: textureEnabled ? tex : null
++ maxAmount: 20
++ color: Qt.rgba(1.0, 1.0, 1.0, particleOpacity)
++ fadeInDuration: 0
++ fadeOutDuration: 500
++ texcoordMode: LineParticle3D.Relative
++ billboard: false
++ length: variableLengthEnabled ? -1.0 : root.lineLength
++ lengthDeltaMin: variableLengthEnabled ? root.lineLength / root.lineSegmentCount : 10.0
++ eolFadeOutDuration: 0
++ particleScale: 20.0
++ segmentCount: 5
++ }
++ velocity: VectorDirection3D {
++ direction: Qt.vector3d(root.velocityX, root.velocityY, root.velocityZ)
++ directionVariation: Qt.vector3d(root.velocityVariation, root.velocityVariation, root.velocityVariation)
++ }
++ emitRate: 2
++ lifeSpan: 3000
++ Text {
++ x: -100
++ text: description
++ font.pixelSize: root.fontSize
++ color: "white"
++ }
++ }
++ }