Тип QML ParticleEmitter3D
Эмиттер для логических частиц. Подробнее...
| Заявление об импорте: | import QtQuick3D.Particles3D |
| С момента: | Qt 6.2 |
| Наследует: | |
| Наследуется от: |
Свойства
- depthBias : real
- emitBursts : List<EmitBurst3D>
- emitRate : real
- enabled : bool
- lifeSpan : int
- lifeSpanVariation : int
- particle : Particle3D
- particleEndScale : real
- particleEndScaleVariation : real
- particleRotation : vector3d
- particleRotationVariation : vector3d
- particleRotationVelocity : vector3d
- particleRotationVelocityVariation : vector3d
- particleScale : real
- particleScaleVariation : real
- shape : ParticleAbstractShape3D
- system : ParticleSystem3D
- velocity : Direction3D
Методы
- vector3d burst(int count, int duration, vector3d position)
- vector3d burst(int count, int duration)
- vector3d burst(int count)
Подробное описание
Этот элемент излучает логические частицы в ParticleSystem3D с заданными начальными атрибутами.
По крайней мере, один эмиттер необходим для наличия частиц в ParticleSystem3D. Есть несколько способов управления количеством излучения:
- Установите emitRate, который управляет количеством частиц в секунду, излучаемых непрерывно.
- Добавьте элементы EmitBurst3D в свойство emitBursts, чтобы декларативно излучать вспышки.
- Вызовите любой из методов burst(), чтобы немедленно излучить вспышки.
Документация по свойствам
depthBias : real
Содержит смещение глубины эмиттера. Смещение глубины добавляется к расстоянию объекта от камеры при сортировке объектов. Это можно использовать для принудительного порядка рендеринга объектов, которые находятся близко друг к другу, которые в противном случае могут быть отображены в разном порядке в разных кадрах. Отрицательные значения перемещают значение сортировки ближе к камере, а положительные значения — дальше от камеры.
emitBursts : Список<EmitBurst3D>
Это свойство принимает список элементов EmitBurst3D, чтобы декларативно определить вспышки. Если время начала, количество и продолжительность вспышки известны заранее, лучше использовать это свойство, чем, например, вызывать burst() с Timer.
Например, чтобы излучить 100 частиц в начале и 50 частиц через 2 секунды:
ParticleEmitter3D {
emitBursts: [
EmitBurst3D {
time: 0
amount: 100
},
EmitBurst3D {
time: 2000
amount: 50
}
]
} См. такжеburst().
emitRate : real
Это свойство определяет постоянную скорость излучения в частицах в секунду. Например, если emitRate равен 120, а система анимируется со скоростью 60 кадров в секунду, в каждом кадре излучаются 2 новые частицы.
Значение по умолчанию равно 0.
enabled : bool
Если enabled установлено в false, этот эмиттер не будет излучать частицы. Обычно это используется для условной активации или деактивации эмиттера. Если вы хотите продолжить излучение вспышек, сохраняйте emitRate равным 0, а не переключайте его на false.
Значение по умолчанию равно true.
lifeSpan : int
Это свойство определяет продолжительность жизни одной частицы в миллисекундах.
Значение по умолчанию равно 1000.
См. такжеlifeSpanVariation.
lifeSpanVariation : int
Это свойство определяет изменение продолжительности жизни одной частицы в миллисекундах.
Например, чтобы излучить частицы, которые будут существовать от 3 до 4 секунд:
ParticleEmitter3D {
...
lifeSpan: 3500
lifeSpanVariation: 500
} Значение по умолчанию равно 0.
См. такжеlifeSpan.
particle : Particle3D
Это свойство определяет логическую частицу, которую излучает этот эмиттер. Эмиттер должен иметь определенную частицу, иначе он ничего не излучает. Частица может быть либо SpriteParticle3D, либо ModelParticle3D.
particleEndScale : real
Это свойство определяет множитель масштаба частиц в конце жизненного цикла частицы lifeSpan. Чтобы получить вариации в размерах конечных частиц, используйте particleEndScaleVariation. Если значение отрицательное, конечный масштаб такой же, как и particleScale, поэтому масштаб не меняется в течение жизненного цикла частицы lifeSpan.
Значение по умолчанию равно -1.0.
См. такжеparticleScale и particleScaleVariation.
particleEndScaleVariation : real
Это свойство определяет изменение масштаба частиц в конце. Если значение отрицательное, particleScaleVariation также используется для конечного масштаба. Например, чтобы излучить частицы, которые начинаются с масштаба 0,5 — 1,5 и заканчиваются масштабом 1,0 — 5,0:
ParticleEmitter3D {
...
particleScale: 1.0
particleScaleVariation: 0.5
particleEndScale: 3.0
particleEndScaleVariation: 2.0
} Значение по умолчанию равно -1.0.
См. такжеparticleEndScale.
particleRotation : vector3d
Это свойство определяет поворот частиц в начале. Поворот определяется в градусах в евклидовых углах.
См. такжеparticleRotationVariation.
particleRotationVariation : vector3d
Это свойство определяет изменение поворота частиц в начале. Изменение поворота определяется в градусах в евклидовых углах.
Например, чтобы излучить частицы с полностью случайными поворотами:
ParticleEmitter3D {
...
particleRotationVariation: Qt.vector3d(180, 180, 180)
} См. такжеparticleRotation.
particleRotationVelocity : vector3d
Это свойство определяет скорость поворота частиц в начале. Скорость вращения определяется в градусах в секунду в евклидовых углах.
См. такжеparticleRotationVelocityVariation.
particleRotationVelocityVariation : vector3d
Это свойство определяет изменение скорости вращения частиц. Изменение скорости вращения определяется как градусы в секунду в евклидовых углах.
Например, чтобы генерировать частицы с случайным вращением, имеющие случайную скорость вращения от -100 до 100 градусов в секунду в любых направлениях:
ParticleEmitter3D {
...
particleRotationVariation: Qt.vector3d(180, 180, 180)
particleRotationVelocityVariation: Qt.vector3d(100, 100, 100)
} См. также particleRotationVelocity.
particleScale : real
Это свойство определяет множитель масштаба частиц в начале. Чтобы обеспечить изменение размеров частиц, используйте particleScaleVariation.
Значение по умолчанию — 1.0.
См. также particleEndScale и particleScaleVariation.
particleScaleVariation : real
Это свойство определяет изменение масштаба частиц. Например, чтобы генерировать частицы со масштабом от 0.5 до 1.5:
ParticleEmitter3D {
...
particleScale: 1.0
particleScaleVariation: 0.5
} Значение по умолчанию — 0.0.
См. также particleScale и particleEndScaleVariation.
shape : ParticleAbstractShape3D
Это свойство определяет необязательную форму области испускания. Она может быть либо ParticleShape3D, либо ParticleModelShape3D. Форма масштабируется, позиционируется и вращается на основе свойств узла-эмиттера. Когда свойство fill формы установлено в false, испускание происходит только с поверхности формы.
Когда форма не определена, испускание происходит из центрального узла-эмиттера.
system : ParticleSystem3D
Это свойство определяет ParticleSystem3D для эмиттера. Если система является непосредственным родителем эмиттера, это свойство не нужно определять.
velocity : Direction3D
Это свойство может быть использовано для задания начальной скорости испускаемых частиц. Если скорость не задана, частицы начинают движение без скорости, и скорость поступает от affectors, если они используются.
Документация по методам
vector3d burst(int count, int duration, vector3d position)
Этот метод испускает count частиц от этого эмиттера в течение следующих duration миллисекунд. Частицы испускаются так, как будто эмиттер находится в позиции position, но все остальные свойства остаются такими же.
vector3d burst(int count, int duration)
Этот метод испускает count частиц от этого эмиттера в течение следующих duration миллисекунд.
Этот метод испускает count частиц от этого эмиттера немедленно.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qml-qtquick3d-particles3d-particleemitter3d.html