Revision control

Copy as Markdown

// 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
ParticleSystem3D {
property real gravityStrength: 0.0
property bool variableLengthEnabled: false
property int lifespan: 3000
id: psystem
Gravity3D {
position: Qt.vector3d(600, 100, 0)
magnitude: psystem.gravityStrength
direction: Qt.vector3d(1, 0, 0)
}
LineEmitter {
description: "length 50"
fontSize: mainWindow.fontSize
system: psystem
emitterPosition: Qt.vector3d(0, 0, 0)
variableLengthEnabled: psystem.variableLengthEnabled
lifespan: psystem.lifespan
}
LineEmitter {
description: "length 100"
fontSize: mainWindow.fontSize
system: psystem
emitterPosition: Qt.vector3d(0, 50, 0)
lineLength: 100
velocityX: 240
lifespan: psystem.lifespan - 1000
variableLengthEnabled: psystem.variableLengthEnabled
}
LineEmitter {
description: "End-of-Life fade"
fontSize: mainWindow.fontSize
system: psystem
emitterPosition: Qt.vector3d(0, 100, 0)
particleEolFadeDuration: 1000
fadeOutDuration: 0
variableLengthEnabled: psystem.variableLengthEnabled
lifespan: psystem.lifespan
}
LineEmitter {
description: "textured"
fontSize: mainWindow.fontSize
system: psystem
emitterPosition: Qt.vector3d(0, 150, 0)
textureEnabled: true
variableLengthEnabled: psystem.variableLengthEnabled
lifespan: psystem.lifespan
}
LineEmitter {
description: "textured, absolute coordinates"
fontSize: mainWindow.fontSize
system: psystem
emitterPosition: Qt.vector3d(0, 200, 0)
textureEnabled: true
particleTexcoordMode: LineParticle3D.Absolute
variableLengthEnabled: psystem.variableLengthEnabled
lifespan: psystem.lifespan
}
LineEmitter {
description: "textured, filled"
fontSize: mainWindow.fontSize
system: psystem
emitterPosition: Qt.vector3d(0, 250, 0)
textureEnabled: true
particleTexcoordMode: LineParticle3D.Fill
variableLengthEnabled: psystem.variableLengthEnabled
lifespan: psystem.lifespan
}
}