Тип QML ParticleEmitter3D
Эмиттер для логических частиц. Подробнее...
| Оператор импорта: | import QtQuick3D.Particles3D . |
| С: | Qt 6.1 |
| Наследуется от: | |
| Наследует: |
Свойства
- depthBias : real
- emitBursts : Список<EmitBurst3D>
- emitRate : real
- enabled : bool
- lifeSpan : int
- lifeSpanVariation : int
- particle : Particle3D
- particleEndScale : real
- particleRotation : vector3d
- particleRotationVariation : vector3d
- particleRotationVelocity : vector3d
- particleRotationVelocityVariation : vector3d
- particleScale : real
- particleScaleVariation : real
- shape : ParticleShape3D
- 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() с Таймером.
Например, чтобы излучить 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. Чтобы иметь вариацию размеров частиц в конце, используйте particleScaleVariation. Если значение отрицательное, конечный масштаб такой же, как и particleScale, поэтому масштаб не изменяется во время жизненного цикла частицы lifeSpan.
Значение по умолчанию — -1.0.
См. также particleScale и particleScaleVariation.
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
Это свойство определяет вариацию масштаба частиц. Эта вариация используется для particleScale и particleEndScale. Например, чтобы генерировать частицы, которые начинаются с масштабом 0.5 - 1.5 и заканчиваются с масштабом 2.5 - 3.5:
ParticleEmitter3D {
...
particleScale: 1.0
particleEndScale: 3.0
particleScaleVariation: 0.5
} Значение по умолчанию — 0.0.
См. также particleScale и particleScaleVariation.
shape : ParticleShape3D
Это свойство определяет необязательную форму для области испускания. Форма масштабируется, позиционируется и поворачивается на основе свойств узла испускателя. Когда свойство fill Shape установлено в false, испускание происходит только с поверхности формы.
Если форма не определена, испускание происходит из центральной точки узла испускателя.
system : ParticleSystem3D
Это свойство определяет ParticleSystem3D для испускателя. Если system является непосредственным родителем испускателя, это свойство не нужно определять.
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.1/qml-qtquick3d-particles3d-particleemitter3d.html