mirror of https://github.com/qt/qtdoc.git
49 lines
1.5 KiB
QML
49 lines
1.5 KiB
QML
|
// Copyright (C) 2024 The Qt Company Ltd.
|
||
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
||
|
import QtQuick
|
||
|
import QtQuick3D
|
||
|
import QtQuick3D.Particles3D
|
||
|
|
||
|
Node {
|
||
|
id: smoke
|
||
|
property real size: 1.0
|
||
|
property color color: "gray"
|
||
|
property real colorVariation: 0.5
|
||
|
|
||
|
SpriteParticle3D {
|
||
|
id: smokeSpriteParticle
|
||
|
sprite: ParticleResources.smokeSpriteTexture
|
||
|
maxAmount: 200
|
||
|
spriteSequence: SpriteSequence3D {
|
||
|
frameCount: 15
|
||
|
interpolate: true
|
||
|
}
|
||
|
billboard: true
|
||
|
color: smoke.color
|
||
|
colorVariation: Qt.vector4d(smoke.colorVariation, smoke.colorVariation, smoke.colorVariation, 0.2)
|
||
|
unifiedColorVariation: true
|
||
|
fadeOutEffect: Particle3D.FadeOpacity
|
||
|
fadeOutDuration: 2000
|
||
|
}
|
||
|
|
||
|
ParticleEmitter3D {
|
||
|
system: ParticleResources.system
|
||
|
enabled: smoke.visible
|
||
|
id: smokeEmitter
|
||
|
particle: smokeSpriteParticle
|
||
|
particleScale: 25 * smoke.size
|
||
|
particleScaleVariation: 10 * smoke.size
|
||
|
particleEndScale: 35 * smoke.size
|
||
|
particleEndScaleVariation: 15 * smoke.size
|
||
|
particleRotationVariation: Qt.vector3d(0, 0, 180)
|
||
|
particleRotationVelocityVariation: Qt.vector3d(0, 0, 40)
|
||
|
emitRate: 30
|
||
|
lifeSpan: 2000
|
||
|
lifeSpanVariation: 1000
|
||
|
velocity: VectorDirection3D {
|
||
|
direction: Qt.vector3d(50.0, 70, -50.0)
|
||
|
directionVariation: Qt.vector3d(10, 10, 10)
|
||
|
}
|
||
|
}
|
||
|
}
|