ParticleProcessMaterial
Содержит конфигурацию частиц для узлов GPUParticles2D или GPUParticles3D.
Содержит конфигурацию частиц для узлов GpuParticles2D или GpuParticles3D.
ParticleProcessMaterial определяет свойства и поведение частиц. Он используется в process_material узлов GpuParticles2D и GpuParticles3D. Некоторые из свойств этого материала применяются к каждой частице при испускании, в то время как другие могут иметь CurveTexture или GradientTexture1D, применяемые для изменения числовых или цветовых значений в течение жизненного цикла частицы.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
ParticleProcessMaterialКонструктор
public ParticleProcessMaterial();Свойства125
AlphaCurveСвойство
public Texture2D AlphaCurve { get; set; }Альфа-значение цвета каждой частицы будет умножено на это CurveTexture На протяжении своей жизни.
Примечание: ParticleProcessMaterial.AlphaCurve :: умножает цвета позвоночника частицы. BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo * Должно быть* true. Для ShaderMaterial, ALPHA *= COLOR.a; должны быть вставлены в таймер fragment() в противном случае, ParticleProcessMaterial.AlphaCurve не будет заметного эффекта.
AngleСвойство
public Vector2 Angle { get; set; }AngleCurveСвойство
public Texture2D AngleCurve { get; set; }Вращение каждой частицы будет анимировано вдоль этой CurveTexture.
AngleMaxСвойство
public float AngleMax { get; set; }Максимальное начальное вращение, применяемое к каждой частице, в градусах.
Применяется только тогда, когда ParticleProcessMaterial.ParticleFlagDisableZ или ParticleProcessMaterial.ParticleFlagRotateY :: true или BaseMaterial3D используется для рисования частиц BaseMaterial3D.BillboardModeEnum.Particles.
AngleMinСвойство
public float AngleMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.AngleMax.
AngularVelocityСвойство
public Vector2 AngularVelocity { get; set; }AngularVelocityCurveСвойство
public Texture2D AngularVelocityCurve { get; set; }Угловая скорость каждой частицы (скорость вращения) будет изменяться вдоль этой CurveTexture в течение ее жизни.
AngularVelocityMaxСвойство
public float AngularVelocityMax { get; set; }Максимальная начальная угловая скорость (ск. вращения), приложенная к каждой частице в градусах в секунду.
Применяется только тогда, когда ParticleProcessMaterial.ParticleFlagDisableZ или ParticleProcessMaterial.ParticleFlagRotateY :: true или BaseMaterial3D используется для рисования частиц BaseMaterial3D.BillboardModeEnum.Particles.
AngularVelocityMinСвойство
public float AngularVelocityMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.AngularVelocityMax.
AnimOffsetСвойство
public Vector2 AnimOffset { get; set; }AnimOffsetCurveСвойство
public Texture2D AnimOffsetCurve { get; set; }Смещение анимации каждой частицы будет меняться в зависимости от CurveTexture.
AnimOffsetMaxСвойство
public float AnimOffsetMax { get; set; }Максимальное смещение анимации, соответствующее индексу кадра в текстуре. 0 — первый кадр, 1 — последний. См. CanvasItemMaterial.ParticlesAnimation.
AnimOffsetMinСвойство
public float AnimOffsetMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.AnimOffsetMax.
AnimSpeedСвойство
public Vector2 AnimSpeed { get; set; }AnimSpeedCurveСвойство
public Texture2D AnimSpeedCurve { get; set; }Скорость анимации каждой частицы будет меняться в зависимости от CurveTexture.
AnimSpeedMaxСвойство
public float AnimSpeedMax { get; set; }Максимальная скорость анимации частиц. Animation скорость 1 означает, что частицы будут полностью заполнены 0 в адрес 1 цикл компенсации в течение жизни, 2 означает 2 циклы и т.д.
С скоростью анимации, превышающей 1, не забудьте о возможности CanvasItemMaterial.ParticlesAnimLoop если вы хотите, чтобы анимация повторилась.
AnimSpeedMinСвойство
public float AnimSpeedMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.AnimSpeedMax.
AttractorInteractionEnabledСвойство
public bool AttractorInteractionEnabled { get; set; }Разрешает материалу использовать силу GPU-притягивателей. Одного флага недостаточно: нужны притягиватель в том же World3D, область и подходящие render masks. Не подключает гравитацию Area3D автоматически.
CollisionBounceСвойство
public float CollisionBounce { get; set; }Коэффициент отскока реакции Rigid. Не создаёт игровой RigidBody для каждой частицы и не гарантирует физическую калибровку эффекта.
CollisionFrictionСвойство
public float CollisionFriction { get; set; }Коэффициент трения реакции Rigid, отличный от общего damping движения. Не является автоматически материалом трения игрового физического тела.
CollisionModeСвойство
public ParticleProcessMaterial.CollisionModeEnum CollisionMode { get; set; }Режим реакции на GPU-коллайдеры: Disabled без реакции, Rigid с ответом материала, HideOnContact с удалением видимых частиц при контакте. Обычный StaticBody не подключается автоматически; нужны коллайдер частиц и подходящие render masks.
CollisionUseScaleСвойство
public bool CollisionUseScale { get; set; }Разрешает участие масштаба частицы в расчёте размера столкновения. Не меняет геометрию коллайдера и не обновляет VisibilityAabb автоматически.
ColorСвойство
public Color Color { get; set; }Базовый цвет симуляции, умножающий другие источники цвета, включая цвета точек и градиенты. Не заменяет материал поверхности. Стандартной поверхности нужен VertexColorUseAsAlbedo, обычно с белым albedo, для использования цвета частиц.
ColorInitialRampСвойство
public Texture2D ColorInitialRamp { get; set; }Градиентная текстура случайного начального выбора цвета в стандартном пути материала. Модулирует базовый Color; отличается от ColorRamp, читаемого по времени жизни. Для видимости результата нужен цвет вершин в материале поверхности.
ColorRampСвойство
public Texture2D ColorRamp { get; set; }Градиентная текстура цвета по нормализованному времени жизни. Умножает базовый цвет и другие источники. Alpha требует соответствующей прозрачности материала поверхности; одна карта симуляции не включает alpha blending.
DampingСвойство
public Vector2 Damping { get; set; }DampingCurveСвойство
public Texture2D DampingCurve { get; set; }Затухание будет меняться вдоль CurveTexture.
DampingMaxСвойство
public float DampingMax { get; set; }Максимальная скорость, с которой частицы теряют скорость. Например, значение 100 означает, что частица перейдет от скорости 100 до 0 за 1 секунду.
DampingMinСвойство
public float DampingMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.DampingMax.
DirectionСвойство
public Vector3 Direction { get; set; }Направление начального выброса; задавайте ненулевой вектор. Spread задаёт угловой разброс, InitialVelocityMin/Max — диапазон начальной скорости. Не является постоянной силой Gravity.
DirectionalVelocityСвойство
public Vector2 DirectionalVelocity { get; set; }DirectionalVelocityCurveСвойство
public Texture2D DirectionalVelocityCurve { get; set; }Кривая, которая определяет скорость вдоль каждой из осей системы частиц на протяжении ее жизненного цикла.
Примечание: Анимированные скорости не будут подвержены затуханию, вместо этого используйте ParticleProcessMaterial.VelocityLimitCurve.
DirectionalVelocityMaxСвойство
public float DirectionalVelocityMax { get; set; }Максимальное значение направленной скорости, умноженное на ParticleProcessMaterial.DirectionalVelocityCurve.
Примечание: Анимированные скорости не будут подвержены демпфированию, вместо этого используйте ParticleProcessMaterial.VelocityLimitCurve.
DirectionalVelocityMinСвойство
public float DirectionalVelocityMin { get; set; }Минимальное значение направленной скорости, умноженное на ParticleProcessMaterial.DirectionalVelocityCurve.
Примечание: Анимированные скорости не будут подвержены демпфированию, вместо этого используйте ParticleProcessMaterial.VelocityLimitCurve.
EmissionBoxExtentsСвойство
public Vector3 EmissionBoxExtents { get; set; }Размеры коробки, если ParticleProcessMaterial.EmissionShape установлен на ParticleProcessMaterial.EmissionShapeEnum.Box.
Примечание: ParticleProcessMaterial.EmissionBoxExtents начинается с центральной точки и применяет значения X, Y и Z в обоих направлениях. Размер в два раза больше площади размеров.
EmissionColorTextureСвойство
public Texture2D EmissionColorTexture { get; set; }Необязательные цвета полезных точек с той же раскладкой, что у EmissionPointTexture. Умножаются на Color и другие источники цвета, а не заменяют их. Для отображения материал меша должен использовать цвет вершин частиц.
EmissionCurveСвойство
public Texture2D EmissionCurve { get; set; }Цвет каждой частицы будет умножен на эту CurveTexture в течение ее жизненного цикла.
Примечание: ParticleProcessMaterial.EmissionCurve умножает цвета вершин сетки частицы. Чтобы иметь видимый эффект на BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo должен быть true. Для ShaderMaterial ALBEDO *= COLOR.rgb; должен быть вставлен в функцию шейдера fragment(). В противном случае ParticleProcessMaterial.EmissionCurve не будет иметь видимого эффекта.
EmissionNormalTextureСвойство
public Texture2D EmissionNormalTexture { get; set; }Соответствующие XYZ-нормали для DirectedPoints. Используйте согласованную с Point Texture раскладку и ненулевые, обычно единичные направления. Это прямые знаковые векторы, не кодированная карта нормалей поверхности. Ориентирует базис; пример с Direction +Z следует нормали.
EmissionPointCountСвойство
public int EmissionPointCount { get; set; }Число полезных образцов текстуры точек для Points/DirectedPoints. Используйте положительное значение в пределах реальных данных, исключая padding. Не равно Amount источника и не генерирует новые точки при увеличении.
EmissionPointTextureСвойство
public Texture2D EmissionPointTexture { get; set; }XYZ-позиции рождения по texel для Points/DirectedPoints, в локальных координатах источника. Float-данные сохраняют отрицательные значения; не применяйте цветовое sRGB-преобразование или lossy-обработку. Точки читаются по строкам, число полезных задаёт EmissionPointCount.
EmissionRingAxisСвойство
public Vector3 EmissionRingAxis { get; set; }Ось кольца при использовании излучателя ParticleProcessMaterial.EmissionShapeEnum.Ring.
EmissionRingConeAngleСвойство
public float EmissionRingConeAngle { get; set; }Угол конуса при использовании эмиттера ParticleProcessMaterial.EmissionShapeEnum.Ring. Угол по умолчанию 90 градусов приводит к кольцу, а угол 0 градусов приводит к конусу. Промежуточные значения приведут к кольцу, где один конец больше другого.
Примечание: В зависимости от ParticleProcessMaterial.EmissionRingHeight угол может быть зафиксирован, если конец кольца достигнут, чтобы сформировать идеальный конус.
EmissionRingHeightСвойство
public float EmissionRingHeight { get; set; }Высота кольца при использовании излучателя ParticleProcessMaterial.EmissionShapeEnum.Ring.
EmissionRingInnerRadiusСвойство
public float EmissionRingInnerRadius { get; set; }Внутренний радиус кольца при использовании излучателя ParticleProcessMaterial.EmissionShapeEnum.Ring.
EmissionRingRadiusСвойство
public float EmissionRingRadius { get; set; }Радиус кольца при использовании излучателя ParticleProcessMaterial.EmissionShapeEnum.Ring.
EmissionShapeСвойство
public ParticleProcessMaterial.EmissionShapeEnum EmissionShape { get; set; }Распределение начальных позиций. Points выбирает позицию из данных, DirectedPoints дополнительно ориентирует локальный базис по нормали. Не является draw mesh или коллайдером. Для выбора из текстур нужны полезные данные и положительный EmissionPointCount.
EmissionShapeOffsetСвойство
public Vector3 EmissionShapeOffset { get; set; }Локальное смещение позиций рождения после EmissionShapeScale: position × scale + offset. Не перемещает Entity источника и не является командой перенести все живые частицы.
EmissionShapeScaleСвойство
public Vector3 EmissionShapeScale { get; set; }Покомпонентный масштаб локальных позиций рождения перед EmissionShapeOffset. Меняет раскладку, не размер рисуемой частицы и не автоматически VisibilityAabb. Для размера геометрии используйте параметры Scale.
EmissionSphereRadiusСвойство
public float EmissionSphereRadius { get; set; }Радиус сферы, если ParticleProcessMaterial.EmissionShape установлен в ParticleProcessMaterial.EmissionShapeEnum.Sphere.
FlatnessСвойство
public float Flatness { get; set; }Величина ParticleProcessMaterial.Spread по оси Y.
GravityСвойство
public Vector3 Gravity { get; set; }Постоянное ускорение в системе координат симуляции. Для показанного 2D-эффекта задаётся Vector3(0,90,0): положительный Y направлен вниз. Это ускорение, не начальная скорость; время уже учитывает симуляция. Начальный ресурс имеет 3D-ориентированное значение (0,-9.8,0), поэтому 2D-настройку задавайте явно.
HueVariationСвойство
public Vector2 HueVariation { get; set; }HueVariationCurveСвойство
public Texture2D HueVariationCurve { get; set; }Оттенок каждой частицы будет меняться в зависимости от CurveTexture.
HueVariationMaxСвойство
public float HueVariationMax { get; set; }Максимальное начальное изменение оттенка, применяемое к каждой частице. Это изменит оттенок цвета частицы.
HueVariationMinСвойство
public float HueVariationMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.HueVariationMax.
InheritVelocityRatioСвойство
public double InheritVelocityRatio { get; set; }Процент скорости соответствующих GpuParticles2D или GpuParticles3D, унаследованный каждой частицей при создании.
InitialVelocityСвойство
public Vector2 InitialVelocity { get; set; }InitialVelocityMaxСвойство
public float InitialVelocityMax { get; set; }Верхняя граница начальной линейной скорости. Согласуйте с InitialVelocityMin; дальнейшее движение также зависит от сил и других настроек симуляции.
InitialVelocityMinСвойство
public float InitialVelocityMin { get; set; }Нижняя граница начальной линейной скорости. Согласуйте с InitialVelocityMax. Равные значения фиксируют начальную величину, но направление может иметь Spread.
LifetimeRandomnessСвойство
public double LifetimeRandomness { get; set; }Коэффициент случайности частиц на протяжении всего срока их существования. lifetime * (1.0 - randf() * lifetime_randomness). Например, a ParticleProcessMaterial.LifetimeRandomness Количество 0.4 масштабирует продолжительность жизни между 0.6 в адрес 1.0 первоначальное значение.
LinearAccelСвойство
public Vector2 LinearAccel { get; set; }LinearAccelCurveСвойство
public Texture2D LinearAccelCurve { get; set; }Линейное ускорение каждой частицы будет меняться вдоль этой CurveTexture.
LinearAccelMaxСвойство
public float LinearAccelMax { get; set; }Максимальное линейное ускорение, приложенное к каждой частице в направлении движения.
LinearAccelMinСвойство
public float LinearAccelMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.LinearAccelMax.
OrbitVelocityСвойство
public Vector2 OrbitVelocity { get; set; }OrbitVelocityCurveСвойство
public Texture2D OrbitVelocityCurve { get; set; }Орбитальная скорость каждой частицы будет меняться вдоль этой CurveTexture.
Примечание: Для 3D-орбитальной скорости используйте CurveXyzTexture.
Примечание: Анимированные скорости не будут подвержены затуханию, вместо этого используйте ParticleProcessMaterial.VelocityLimitCurve.
OrbitVelocityMaxСвойство
public float OrbitVelocityMax { get; set; }Максимальная орбитальная скорость, применяемая к каждой частице. Заставляет частицы вращаться вокруг начала координат. Указывается в количестве полных оборотов вокруг начала координат в секунду.
Примечание: Анимированные скорости не будут затронуты затуханием, вместо этого используйте ParticleProcessMaterial.VelocityLimitCurve.
OrbitVelocityMinСвойство
public float OrbitVelocityMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.OrbitVelocityMax.
Примечание: Анимированные скорости не будут подвержены демпфированию, вместо этого используйте ParticleProcessMaterial.VelocityLimitCurve.
ParticleFlagAlignYСвойство
public bool ParticleFlagAlignY { get; set; }Совместите ось Y частицы с направлением ее скорости.
ParticleFlagDampingAsFrictionСвойство
public bool ParticleFlagDampingAsFriction { get; set; }Изменяет поведение свойств демпфирования с линейного замедления на замедление на основе процента скорости.
ParticleFlagDisableZСвойство
public bool ParticleFlagDisableZ { get; set; }Ограничивает движение частиц плоскостью XY для 2D-эффекта. В примере включается явно до назначения материала. При совместном ресурсе изменение этого флага относится ко всем использующим его системам, а не только к одной Entity.
ParticleFlagInheritEmitterScaleСвойство
public bool ParticleFlagInheritEmitterScale { get; set; }Если true, частицы унаследуют масштаб излучателя.
Примечание: Это не имеет эффекта, если GpuParticles3D.LocalCoords имеет значение true, поскольку частицы в локальном пространстве уже подвержены влиянию масштаба излучателя.
ParticleFlagPreserveColorСвойство
public bool ParticleFlagPreserveColor { get; set; }Если true, сохраняет цвет, указанный вручную. Для использования при использовании GpuParticles3D.EmitParticle или когда работаешь с подменщиками.
ParticleFlagRotateYСвойство
public bool ParticleFlagRotateY { get; set; }Если true, частицы вращаются вокруг оси Y на ParticleProcessMaterial.AngleMin.
RadialAccelСвойство
public Vector2 RadialAccel { get; set; }RadialAccelCurveСвойство
public Texture2D RadialAccelCurve { get; set; }Радиальное ускорение каждой частицы будет меняться вдоль CurveTexture.
RadialAccelMaxСвойство
public float RadialAccelMax { get; set; }Максимальное радиальное ускорение, применяемое к каждой частице. Заставляет частицу ускоряться от начала координат или к нему, если отрицательно.
RadialAccelMinСвойство
public float RadialAccelMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.RadialAccelMax.
RadialVelocityСвойство
public Vector2 RadialVelocity { get; set; }RadialVelocityCurveСвойство
public Texture2D RadialVelocityCurve { get; set; }CurveTexture, которая определяет скорость в течение жизни частицы от (или к) ParticleProcessMaterial.VelocityPivot.
Примечание: Анимированные скорости не будут затронуты затуханием, вместо этого используйте ParticleProcessMaterial.VelocityLimitCurve.
RadialVelocityMaxСвойство
public float RadialVelocityMax { get; set; }Максимальная радиальная скорость, применяемая к каждой частице. Заставляет частицы двигаться от ParticleProcessMaterial.VelocityPivot или к нему, если отрицательно.
Примечание: Анимированные скорости не будут затронуты затуханием, вместо этого используйте ParticleProcessMaterial.VelocityLimitCurve.
RadialVelocityMinСвойство
public float RadialVelocityMin { get; set; }Минимальная радиальная скорость, применяемая к каждой частице. Заставляет частицы двигаться от ParticleProcessMaterial.VelocityPivot или к нему, если отрицательно.
Примечание: Анимированные скорости не будут затронуты затуханием, вместо этого используйте ParticleProcessMaterial.VelocityLimitCurve.
Rotation3DMaxСвойство
public Vector3 Rotation3DMax { get; set; }Максимальная 3D-ориентация в градусах. Работает только в 3D и при включенной опции ParticleProcessMaterial.UseRotation3D.
Rotation3DMinСвойство
public Vector3 Rotation3DMin { get; set; }Минимальная 3D-ориентация в градусах. Работает только в 3D и при включенной опции ParticleProcessMaterial.UseRotation3D.
RotationVelocity3DCurveСвойство
public Texture2D RotationVelocity3DCurve { get; set; }Кривая скорости вращения за весь период жизни, по каждой оси. Включите ParticleProcessMaterial.UseRotationVelocity3D, чтобы использовать её.
RotationVelocity3DMaxСвойство
public Vector3 RotationVelocity3DMax { get; set; }Максимальная скорость 3D-вращения вокруг локальной оси частицы. Для использования этой функции включите параметр ParticleProcessMaterial.UseRotationVelocity3D.
RotationVelocity3DMinСвойство
public Vector3 RotationVelocity3DMin { get; set; }Минимальная скорость 3D-вращения вокруг локальной оси частицы. Включите параметр ParticleProcessMaterial.UseRotationVelocity3D, чтобы использовать это значение.
ScaleСвойство
public Vector2 Scale { get; set; }Диапазон базового масштаба частицы как Vector2 минимум/максимум. Не меняет распределение начальных позиций EmissionShapeScale. Итоговый масштаб также зависит от ScaleCurve и пути отображения.
Scale3DMaxСвойство
public Vector3 Scale3DMax { get; set; }Максимальное значение вектора случайного масштаба для каждой частицы.
Работает только при включенной опции ParticleProcessMaterial.UseScale3D.
Scale3DMinСвойство
public Vector3 Scale3DMin { get; set; }Минимальное значение вектора случайного масштаба для каждой частицы.
Работает только при включенной опции ParticleProcessMaterial.UseScale3D.
ScaleCurveСвойство
public Texture2D ScaleCurve { get; set; }Текстура кривой, умножающая базовый масштаб по нормализованному времени жизни. Обычный CurveTexture с постоянным 0.5 в примере уменьшает базовый масштаб 2 до 1. Не считайте все кривые остальных свойств мультипликативными по аналогии.
ScaleMaxСвойство
public float ScaleMax { get; set; }Верхняя граница базового масштаба геометрии частицы. Согласуйте с ScaleMin; итог зависит от ScaleCurve, трансформаций и billboard-режима поверхности. Keep Size не является универсальным условием работы масштаба.
ScaleMinСвойство
public float ScaleMin { get; set; }Нижняя граница базового масштаба геометрии частицы. Равенство ScaleMax убирает этот случайный диапазон, но не остальные источники вариации. ScaleCurve умножает полученный масштаб; EmissionShapeScale вместо этого меняет позиции рождения.
ScaleOverVelocityСвойство
public Vector2 ScaleOverVelocity { get; set; }ScaleOverVelocityCurveСвойство
public Texture2D ScaleOverVelocityCurve { get; set; }Либо CurveTexture, либо CurveXyzTexture, которые масштабируют каждую частицу на основе ее скорости.
ScaleOverVelocityMaxСвойство
public float ScaleOverVelocityMax { get; set; }Максимальное опорное значение скорости для ParticleProcessMaterial.ScaleOverVelocityCurve.
ParticleProcessMaterial.ScaleOverVelocityCurve будет интерполировано между ParticleProcessMaterial.ScaleOverVelocityMin и ParticleProcessMaterial.ScaleOverVelocityMax.
ScaleOverVelocityMinСвойство
public float ScaleOverVelocityMin { get; set; }Минимальное значение скорости для ParticleProcessMaterial.ScaleOverVelocityCurve.
ParticleProcessMaterial.ScaleOverVelocityCurve будет интерполировано между ParticleProcessMaterial.ScaleOverVelocityMin и ParticleProcessMaterial.ScaleOverVelocityMax.
SpreadСвойство
public float Spread { get; set; }Угловой разброс начального направления в градусах. Не путайте с Randomness источника, меняющим моменты рождения, или с диапазоном начальной скорости.
SubEmitterAmountAtCollisionСвойство
public int SubEmitterAmountAtCollision { get; set; }Запрошенные рождения цели для подходящего контакта основной частицы в AtCollision. Без рабочего CollisionMode/коллайдера GPU событие не обеспечивается. Не путайте с сигналами игровой физики.
SubEmitterAmountAtEndСвойство
public int SubEmitterAmountAtEnd { get; set; }Запрошенные рождения цели при конце жизни каждой основной частицы в AtEnd. Наличие видимого второго этапа не означает новую Entity; вместимость цели остаётся отдельной.
SubEmitterAmountAtStartСвойство
public int SubEmitterAmountAtStart { get; set; }Запрошенные рождения цели на событие рождения основной частицы в AtStart. Не глобальное число для всей системы; Amount цели и другие ограничения продолжают действовать.
SubEmitterFrequencyСвойство
public double SubEmitterFrequency { get; set; }Частота Constant в герцах для активной основной частицы. Задавайте конечное положительное число: setter передаёт шейдеру обратный интервал. Шаг симуляции ограничивает реализацию; это не точная гарантия произвольной частоты независимо от FPS.
SubEmitterKeepVelocityСвойство
public bool SubEmitterKeepVelocity { get; set; }Передаёт скорость основной частицы в запрос рождения цели. В текущем шейдерном пути переданная скорость может заменить начальную инициализацию скорости цели; не считайте это простым сложением всех её настроек.
SubEmitterModeСвойство
public ParticleProcessMaterial.SubEmitterModeEnum SubEmitterMode { get; set; }Событие передачи рождения в назначенную GpuParticles3D.SubEmitter: Disabled, Constant, AtStart, AtEnd или AtCollision. Одного режима без действующей связи недостаточно. AtCollision требует столкновений GPU; Compatibility не поддерживает активные режимы в текущем коде.
TangentialAccelСвойство
public Vector2 TangentialAccel { get; set; }TangentialAccelCurveСвойство
public Texture2D TangentialAccelCurve { get; set; }Тангенциальное ускорение каждой частицы будет меняться вдоль этой CurveTexture.
TangentialAccelMaxСвойство
public float TangentialAccelMax { get; set; }Максимальное тангенциальное ускорение, приложенное к каждой частице. Тангенциальное ускорение перпендикулярно скорости частицы, что придает частицам вихревое движение.
TangentialAccelMinСвойство
public float TangentialAccelMin { get; set; }Минимальный эквивалент ParticleProcessMaterial.TangentialAccelMax.
TurbulenceEnabledСвойство
public bool TurbulenceEnabled { get; set; }Включает процедурное поле турбулентности для изменения направления движения GPU-частиц. Само по себе не задаёт начальную скорость; начальное смещение настраивается отдельно.
TurbulenceInfluenceСвойство
public Vector2 TurbulenceInfluence { get; set; }Диапазон влияния на изменение движения: X — минимум, Y — максимум. Значение для частицы умножается на TurbulenceInfluenceOverLife, затем ограничивается 0–1 для перенаправления; начальное смещение этим диапазоном не отключается.
TurbulenceInfluenceMaxСвойство
public float TurbulenceInfluenceMax { get; set; }Верхняя граница выбираемого для частицы влияния на направление движения. Одинаковые Min и Max убирают разброс этой настройки; большее влияние не гарантирует большей скорости.
TurbulenceInfluenceMinСвойство
public float TurbulenceInfluenceMin { get; set; }Нижняя граница выбираемого для частицы влияния на направление движения. Нулевые Min и Max подавляют перенаправление, но не TurbulenceInitialDisplacement.
TurbulenceInfluenceOverLifeСвойство
public Texture2D TurbulenceInfluenceOverLife { get; set; }Текстура-множитель влияния по нормализованному возрасту частицы: X=0 при рождении, X=1 при смерти; читается красный канал. Без текстуры множитель 1. Нулевая кривая подавляет перенаправление, но не начальное смещение.
TurbulenceInitialDisplacementСвойство
public Vector2 TurbulenceInitialDisplacement { get; set; }Диапазон однократного смещения при рождении: X — минимум, Y — максимум. Смещение направлено по полю шума, не является скоростью и может действовать при нулевом влиянии на дальнейшее движение.
TurbulenceInitialDisplacementMaxСвойство
public float TurbulenceInitialDisplacementMax { get; set; }Верхняя граница однократного смещения при рождении вдоль направления шума. Нулевые Min и Max отключают это смещение, не отключая изменение направления движения.
TurbulenceInitialDisplacementMinСвойство
public float TurbulenceInitialDisplacementMin { get; set; }Нижняя граница однократного смещения при рождении вдоль направления шума. Используется при включённой турбулентности; не задаёт постоянное движение.
TurbulenceNoiseScaleСвойство
public float TurbulenceNoiseScale { get; set; }Нелинейный регулятор пространственной детализации шума. Не является расстоянием в метрах или прямой пространственной частотой; подбирайте по траектории при неизменных остальных настройках.
TurbulenceNoiseSpeedСвойство
public Vector3 TurbulenceNoiseSpeed { get; set; }Скорость перемещения поля шума во времени, не скорость частиц. Для неподвижного поля задайте Vector3.Zero и также обнулите TurbulenceNoiseSpeedRandom.
TurbulenceNoiseSpeedRandomСвойство
public float TurbulenceNoiseSpeedRandom { get; set; }Скорость изменения дополнительной координаты процедурного шума во времени. При ненулевом значении поле может меняться даже с TurbulenceNoiseSpeed = Vector3.Zero.
TurbulenceNoiseStrengthСвойство
public float TurbulenceNoiseStrength { get; set; }Контраст и детализация направлений процедурного шума. Это не прямая сила или скорость частицы; увеличение значения не гарантирует ускорения.
UseRotation3DСвойство
public bool UseRotation3D { get; set; }Включает использование параметров ParticleProcessMaterial.Rotation3DMin и ParticleProcessMaterial.Rotation3DMax.
UseRotationVelocity3DСвойство
public bool UseRotationVelocity3D { get; set; }Включить скорость вращения в 3D-пространстве.
UseScale3DСвойство
public bool UseScale3D { get; set; }Включить использование ParticleProcessMaterial.Scale3DMin и ParticleProcessMaterial.Scale3DMax.
VelocityLimitCurveСвойство
public Texture2D VelocityLimitCurve { get; set; }CurveTexture, определяющий максимальную скорость частицы за время ее жизни.
VelocityPivotСвойство
public Vector3 VelocityPivot { get; set; }Точка опоры, используемая для расчета радиальной и орбитальной скорости частиц.
Методы116
GetAlphaCurveTexture2D
public Texture2D GetAlphaCurve();Texture2DGetCollisionBouncefloat
public float GetCollisionBounce();floatGetCollisionFrictionfloat
public float GetCollisionFriction();floatGetCollisionModeParticleProcessMaterial.CollisionModeEnum
public ParticleProcessMaterial.CollisionModeEnum GetCollisionMode();Возвращает CollisionMode. Режим реакции на GPU-коллайдеры: Disabled без реакции, Rigid с ответом материала, HideOnContact с удалением видимых частиц при контакте. Обычный StaticBody не подключается автоматически; нужны коллайдер частиц и подходящие render masks.
ParticleProcessMaterial.CollisionModeEnumТекущее значение CollisionMode; учитывайте описанные единицы и область действия.
GetColorColor
public Color GetColor();Возвращает Color. Базовый цвет симуляции, умножающий другие источники цвета, включая цвета точек и градиенты. Не заменяет материал поверхности. Стандартной поверхности нужен VertexColorUseAsAlbedo, обычно с белым albedo, для использования цвета частиц.
ColorТекущее значение Color; учитывайте формат данных и ограничения свойства.
GetColorInitialRampTexture2D
public Texture2D GetColorInitialRamp();Texture2DGetColorRampTexture2D
public Texture2D GetColorRamp();Texture2DGetDirectionVector3
public Vector3 GetDirection();Vector3GetEmissionBoxExtentsVector3
public Vector3 GetEmissionBoxExtents();Vector3GetEmissionColorTextureTexture2D
public Texture2D GetEmissionColorTexture();Возвращает EmissionColorTexture. Необязательные цвета полезных точек с той же раскладкой, что у EmissionPointTexture. Умножаются на Color и другие источники цвета, а не заменяют их. Для отображения материал меша должен использовать цвет вершин частиц.
Texture2DТекущее значение EmissionColorTexture; учитывайте формат данных и ограничения свойства.
GetEmissionCurveTexture2D
public Texture2D GetEmissionCurve();Texture2DGetEmissionNormalTextureTexture2D
public Texture2D GetEmissionNormalTexture();Возвращает EmissionNormalTexture. Соответствующие XYZ-нормали для DirectedPoints. Используйте согласованную с Point Texture раскладку и ненулевые, обычно единичные направления. Это прямые знаковые векторы, не кодированная карта нормалей поверхности. Ориентирует базис; пример с Direction +Z следует нормали.
Texture2DТекущее значение EmissionNormalTexture; учитывайте формат данных и ограничения свойства.
GetEmissionPointCountint
public int GetEmissionPointCount();Возвращает EmissionPointCount. Число полезных образцов текстуры точек для Points/DirectedPoints. Используйте положительное значение в пределах реальных данных, исключая padding. Не равно Amount источника и не генерирует новые точки при увеличении.
intТекущее значение EmissionPointCount; учитывайте формат данных и ограничения свойства.
GetEmissionPointTextureTexture2D
public Texture2D GetEmissionPointTexture();Возвращает EmissionPointTexture. XYZ-позиции рождения по texel для Points/DirectedPoints, в локальных координатах источника. Float-данные сохраняют отрицательные значения; не применяйте цветовое sRGB-преобразование или lossy-обработку. Точки читаются по строкам, число полезных задаёт EmissionPointCount.
Texture2DТекущее значение EmissionPointTexture; учитывайте формат данных и ограничения свойства.
GetEmissionRingAxisVector3
public Vector3 GetEmissionRingAxis();Vector3GetEmissionRingConeAnglefloat
public float GetEmissionRingConeAngle();floatGetEmissionRingHeightfloat
public float GetEmissionRingHeight();floatGetEmissionRingInnerRadiusfloat
public float GetEmissionRingInnerRadius();floatGetEmissionRingRadiusfloat
public float GetEmissionRingRadius();floatGetEmissionShapeParticleProcessMaterial.EmissionShapeEnum
public ParticleProcessMaterial.EmissionShapeEnum GetEmissionShape();Возвращает EmissionShape. Распределение начальных позиций. Points выбирает позицию из данных, DirectedPoints дополнительно ориентирует локальный базис по нормали. Не является draw mesh или коллайдером. Для выбора из текстур нужны полезные данные и положительный EmissionPointCount.
ParticleProcessMaterial.EmissionShapeEnumТекущее значение EmissionShape; учитывайте формат данных и ограничения свойства.
GetEmissionShapeOffsetVector3
public Vector3 GetEmissionShapeOffset();Возвращает EmissionShapeOffset. Локальное смещение позиций рождения после EmissionShapeScale: position × scale + offset. Не перемещает Entity источника и не является командой перенести все живые частицы.
Vector3Текущее значение EmissionShapeOffset; учитывайте формат данных и ограничения свойства.
GetEmissionShapeScaleVector3
public Vector3 GetEmissionShapeScale();Возвращает EmissionShapeScale. Покомпонентный масштаб локальных позиций рождения перед EmissionShapeOffset. Меняет раскладку, не размер рисуемой частицы и не автоматически VisibilityAabb. Для размера геометрии используйте параметры Scale.
Vector3Текущее значение EmissionShapeScale; учитывайте формат данных и ограничения свойства.
GetEmissionSphereRadiusfloat
public float GetEmissionSphereRadius();floatGetFlatnessfloat
public float GetFlatness();floatGetGravityVector3
public Vector3 GetGravity();Vector3GetInheritVelocityRatiodouble
public double GetInheritVelocityRatio();doubleGetLifetimeRandomnessdouble
public double GetLifetimeRandomness();doubleGetParamVector2
public Vector2 GetParam(ParticleProcessMaterial.Parameter param);Возвращает минимальное и максимальное значения указанного param в виде вектора.
Компонент x возвращаемого вектора соответствует минимуму, а компонент y соответствует максимуму.
| Имя | Тип | По умолчанию |
|---|---|---|
param | ParticleProcessMaterial.Parameter | — |
Vector2GetParamMaxfloat
public float GetParamMax(ParticleProcessMaterial.Parameter param);Возвращает максимальный диапазон значений для заданного параметра.
| Имя | Тип | По умолчанию |
|---|---|---|
param | ParticleProcessMaterial.Parameter | — |
floatGetParamMinfloat
public float GetParamMin(ParticleProcessMaterial.Parameter param);Возвращает минимальный диапазон значений для заданного параметра.
| Имя | Тип | По умолчанию |
|---|---|---|
param | ParticleProcessMaterial.Parameter | — |
floatGetParamTextureTexture2D
public Texture2D GetParamTexture(ParticleProcessMaterial.Parameter param);Возвращает Texture2D, используемую указанным параметром.
| Имя | Тип | По умолчанию |
|---|---|---|
param | ParticleProcessMaterial.Parameter | — |
Texture2DGetParticleFlagbool
public bool GetParticleFlag(ParticleProcessMaterial.ParticleFlags particleFlag);Возвращает true, если указанный флаг частицы включен.
| Имя | Тип | По умолчанию |
|---|---|---|
particleFlag | ParticleProcessMaterial.ParticleFlags | — |
boolGetRotation3DMaxVector3
public Vector3 GetRotation3DMax();Vector3GetRotation3DMinVector3
public Vector3 GetRotation3DMin();Vector3GetRotationVelocity3DCurveTexture2D
public Texture2D GetRotationVelocity3DCurve();Texture2DGetRotationVelocity3DMaxVector3
public Vector3 GetRotationVelocity3DMax();Vector3GetRotationVelocity3DMinVector3
public Vector3 GetRotationVelocity3DMin();Vector3GetScale3DMaxVector3
public Vector3 GetScale3DMax();Vector3GetScale3DMinVector3
public Vector3 GetScale3DMin();Vector3GetSpreadfloat
public float GetSpread();floatGetSubEmitterAmountAtCollisionint
public int GetSubEmitterAmountAtCollision();Возвращает SubEmitterAmountAtCollision. Запрошенные рождения цели для подходящего контакта основной частицы в AtCollision. Без рабочего CollisionMode/коллайдера GPU событие не обеспечивается. Не путайте с сигналами игровой физики.
intТекущее значение SubEmitterAmountAtCollision; учитывайте единицы и различие настройки/эффективного результата.
GetSubEmitterAmountAtEndint
public int GetSubEmitterAmountAtEnd();Возвращает SubEmitterAmountAtEnd. Запрошенные рождения цели при конце жизни каждой основной частицы в AtEnd. Наличие видимого второго этапа не означает новую Entity; вместимость цели остаётся отдельной.
intТекущее значение SubEmitterAmountAtEnd; учитывайте единицы и различие настройки/эффективного результата.
GetSubEmitterAmountAtStartint
public int GetSubEmitterAmountAtStart();Возвращает SubEmitterAmountAtStart. Запрошенные рождения цели на событие рождения основной частицы в AtStart. Не глобальное число для всей системы; Amount цели и другие ограничения продолжают действовать.
intТекущее значение SubEmitterAmountAtStart; учитывайте единицы и различие настройки/эффективного результата.
GetSubEmitterFrequencydouble
public double GetSubEmitterFrequency();Возвращает SubEmitterFrequency. Частота Constant в герцах для активной основной частицы. Задавайте конечное положительное число: setter передаёт шейдеру обратный интервал. Шаг симуляции ограничивает реализацию; это не точная гарантия произвольной частоты независимо от FPS.
doubleТекущее значение SubEmitterFrequency; учитывайте единицы и различие настройки/эффективного результата.
GetSubEmitterKeepVelocitybool
public bool GetSubEmitterKeepVelocity();Возвращает SubEmitterKeepVelocity. Передаёт скорость основной частицы в запрос рождения цели. В текущем шейдерном пути переданная скорость может заменить начальную инициализацию скорости цели; не считайте это простым сложением всех её настроек.
boolТекущее значение SubEmitterKeepVelocity; учитывайте единицы и различие настройки/эффективного результата.
GetSubEmitterModeParticleProcessMaterial.SubEmitterModeEnum
public ParticleProcessMaterial.SubEmitterModeEnum GetSubEmitterMode();Возвращает SubEmitterMode. Событие передачи рождения в назначенную GpuParticles3D.SubEmitter: Disabled, Constant, AtStart, AtEnd или AtCollision. Одного режима без действующей связи недостаточно. AtCollision требует столкновений GPU; Compatibility не поддерживает активные режимы в текущем коде.
ParticleProcessMaterial.SubEmitterModeEnumТекущее значение SubEmitterMode; учитывайте единицы и различие настройки/эффективного результата.
GetTurbulenceEnabledbool
public bool GetTurbulenceEnabled();Возвращает сохранённую настройку. Включает процедурное поле турбулентности для изменения направления движения GPU-частиц. Само по себе не задаёт начальную скорость; начальное смещение настраивается отдельно.
boolGetTurbulenceNoiseScalefloat
public float GetTurbulenceNoiseScale();Возвращает сохранённую настройку. Нелинейный регулятор пространственной детализации шума. Не является расстоянием в метрах или прямой пространственной частотой; подбирайте по траектории при неизменных остальных настройках.
floatGetTurbulenceNoiseSpeedVector3
public Vector3 GetTurbulenceNoiseSpeed();Возвращает сохранённую настройку. Скорость перемещения поля шума во времени, не скорость частиц. Для неподвижного поля задайте Vector3.Zero и также обнулите TurbulenceNoiseSpeedRandom.
Vector3GetTurbulenceNoiseSpeedRandomfloat
public float GetTurbulenceNoiseSpeedRandom();Возвращает сохранённую настройку. Скорость изменения дополнительной координаты процедурного шума во времени. При ненулевом значении поле может меняться даже с TurbulenceNoiseSpeed = Vector3.Zero.
floatGetTurbulenceNoiseStrengthfloat
public float GetTurbulenceNoiseStrength();Возвращает сохранённую настройку. Контраст и детализация направлений процедурного шума. Это не прямая сила или скорость частицы; увеличение значения не гарантирует ускорения.
floatGetVelocityLimitCurveTexture2D
public Texture2D GetVelocityLimitCurve();Texture2DGetVelocityPivotVector3
public Vector3 GetVelocityPivot();Vector3IsAttractorInteractionEnabledbool
public bool IsAttractorInteractionEnabled();Возвращает AttractorInteractionEnabled. Разрешает материалу использовать силу GPU-притягивателей. Одного флага недостаточно: нужны притягиватель в том же World3D, область и подходящие render masks. Не подключает гравитацию Area3D автоматически.
boolТекущее значение AttractorInteractionEnabled; учитывайте описанные единицы и область действия.
IsCollisionUsingScalebool
public bool IsCollisionUsingScale();boolIsUsingRotation3Dbool
public bool IsUsingRotation3D();boolIsUsingRotationVelocity3Dbool
public bool IsUsingRotationVelocity3D();boolIsUsingScale3Dbool
public bool IsUsingScale3D();boolSetAlphaCurvevoid
public void SetAlphaCurve(Texture2D curve);| Имя | Тип | По умолчанию |
|---|---|---|
curve | Texture2D | — |
SetAttractorInteractionEnabledvoid
public void SetAttractorInteractionEnabled(bool enabled);Задаёт AttractorInteractionEnabled. Разрешает материалу использовать силу GPU-притягивателей. Одного флага недостаточно: нужны притягиватель в том же World3D, область и подходящие render masks. Не подключает гравитацию Area3D автоматически.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledРазрешает материалу использовать силу GPU-притягивателей. Одного флага недостаточно: нужны притягиватель в том же World3D, область и подходящие render masks. Не подключает гравитацию Area3D автоматически.
SetCollisionBouncevoid
public void SetCollisionBounce(float bounce);| Имя | Тип | По умолчанию |
|---|---|---|
bounce | float | — |
SetCollisionFrictionvoid
public void SetCollisionFriction(float friction);| Имя | Тип | По умолчанию |
|---|---|---|
friction | float | — |
SetCollisionModevoid
public void SetCollisionMode(ParticleProcessMaterial.CollisionModeEnum mode);Задаёт CollisionMode. Режим реакции на GPU-коллайдеры: Disabled без реакции, Rigid с ответом материала, HideOnContact с удалением видимых частиц при контакте. Обычный StaticBody не подключается автоматически; нужны коллайдер частиц и подходящие render masks.
| Имя | Тип | По умолчанию |
|---|---|---|
mode | ParticleProcessMaterial.CollisionModeEnum | — |
modeРежим реакции на GPU-коллайдеры: Disabled без реакции, Rigid с ответом материала, HideOnContact с удалением видимых частиц при контакте. Обычный StaticBody не подключается автоматически; нужны коллайдер частиц и подходящие render masks.
SetCollisionUseScalevoid
public void SetCollisionUseScale(bool radius);| Имя | Тип | По умолчанию |
|---|---|---|
radius | bool | — |
SetColorvoid
public void SetColor(Color color);Задаёт Color. Базовый цвет симуляции, умножающий другие источники цвета, включая цвета точек и градиенты. Не заменяет материал поверхности. Стандартной поверхности нужен VertexColorUseAsAlbedo, обычно с белым albedo, для использования цвета частиц.
| Имя | Тип | По умолчанию |
|---|---|---|
color | Color | — |
colorБазовый цвет симуляции, умножающий другие источники цвета, включая цвета точек и градиенты. Не заменяет материал поверхности. Стандартной поверхности нужен VertexColorUseAsAlbedo, обычно с белым albedo, для использования цвета частиц.
SetColorInitialRampvoid
public void SetColorInitialRamp(Texture2D ramp);| Имя | Тип | По умолчанию |
|---|---|---|
ramp | Texture2D | — |
SetColorRampvoid
public void SetColorRamp(Texture2D ramp);| Имя | Тип | По умолчанию |
|---|---|---|
ramp | Texture2D | — |
SetDirectionvoid
public void SetDirection(Vector3 degrees);| Имя | Тип | По умолчанию |
|---|---|---|
degrees | Vector3 | — |
SetEmissionBoxExtentsvoid
public void SetEmissionBoxExtents(Vector3 extents);| Имя | Тип | По умолчанию |
|---|---|---|
extents | Vector3 | — |
SetEmissionColorTexturevoid
public void SetEmissionColorTexture(Texture2D texture);Задаёт EmissionColorTexture. Необязательные цвета полезных точек с той же раскладкой, что у EmissionPointTexture. Умножаются на Color и другие источники цвета, а не заменяют их. Для отображения материал меша должен использовать цвет вершин частиц.
| Имя | Тип | По умолчанию |
|---|---|---|
texture | Texture2D | — |
textureНеобязательные цвета полезных точек с той же раскладкой, что у EmissionPointTexture. Умножаются на Color и другие источники цвета, а не заменяют их. Для отображения материал меша должен использовать цвет вершин частиц.
SetEmissionCurvevoid
public void SetEmissionCurve(Texture2D curve);| Имя | Тип | По умолчанию |
|---|---|---|
curve | Texture2D | — |
SetEmissionNormalTexturevoid
public void SetEmissionNormalTexture(Texture2D texture);Задаёт EmissionNormalTexture. Соответствующие XYZ-нормали для DirectedPoints. Используйте согласованную с Point Texture раскладку и ненулевые, обычно единичные направления. Это прямые знаковые векторы, не кодированная карта нормалей поверхности. Ориентирует базис; пример с Direction +Z следует нормали.
| Имя | Тип | По умолчанию |
|---|---|---|
texture | Texture2D | — |
textureСоответствующие XYZ-нормали для DirectedPoints. Используйте согласованную с Point Texture раскладку и ненулевые, обычно единичные направления. Это прямые знаковые векторы, не кодированная карта нормалей поверхности. Ориентирует базис; пример с Direction +Z следует нормали.
SetEmissionPointCountvoid
public void SetEmissionPointCount(int pointCount);Задаёт EmissionPointCount. Число полезных образцов текстуры точек для Points/DirectedPoints. Используйте положительное значение в пределах реальных данных, исключая padding. Не равно Amount источника и не генерирует новые точки при увеличении.
| Имя | Тип | По умолчанию |
|---|---|---|
pointCount | int | — |
pointCountЧисло полезных образцов текстуры точек для Points/DirectedPoints. Используйте положительное значение в пределах реальных данных, исключая padding. Не равно Amount источника и не генерирует новые точки при увеличении.
SetEmissionPointTexturevoid
public void SetEmissionPointTexture(Texture2D texture);Задаёт EmissionPointTexture. XYZ-позиции рождения по texel для Points/DirectedPoints, в локальных координатах источника. Float-данные сохраняют отрицательные значения; не применяйте цветовое sRGB-преобразование или lossy-обработку. Точки читаются по строкам, число полезных задаёт EmissionPointCount.
| Имя | Тип | По умолчанию |
|---|---|---|
texture | Texture2D | — |
textureXYZ-позиции рождения по texel для Points/DirectedPoints, в локальных координатах источника. Float-данные сохраняют отрицательные значения; не применяйте цветовое sRGB-преобразование или lossy-обработку. Точки читаются по строкам, число полезных задаёт EmissionPointCount.
SetEmissionRingAxisvoid
public void SetEmissionRingAxis(Vector3 axis);| Имя | Тип | По умолчанию |
|---|---|---|
axis | Vector3 | — |
SetEmissionRingConeAnglevoid
public void SetEmissionRingConeAngle(float coneAngle);| Имя | Тип | По умолчанию |
|---|---|---|
coneAngle | float | — |
SetEmissionRingHeightvoid
public void SetEmissionRingHeight(float height);| Имя | Тип | По умолчанию |
|---|---|---|
height | float | — |
SetEmissionRingInnerRadiusvoid
public void SetEmissionRingInnerRadius(float innerRadius);| Имя | Тип | По умолчанию |
|---|---|---|
innerRadius | float | — |
SetEmissionRingRadiusvoid
public void SetEmissionRingRadius(float radius);| Имя | Тип | По умолчанию |
|---|---|---|
radius | float | — |
SetEmissionShapevoid
public void SetEmissionShape(ParticleProcessMaterial.EmissionShapeEnum shape);Задаёт EmissionShape. Распределение начальных позиций. Points выбирает позицию из данных, DirectedPoints дополнительно ориентирует локальный базис по нормали. Не является draw mesh или коллайдером. Для выбора из текстур нужны полезные данные и положительный EmissionPointCount.
| Имя | Тип | По умолчанию |
|---|---|---|
shape | ParticleProcessMaterial.EmissionShapeEnum | — |
shapeРаспределение начальных позиций. Points выбирает позицию из данных, DirectedPoints дополнительно ориентирует локальный базис по нормали. Не является draw mesh или коллайдером. Для выбора из текстур нужны полезные данные и положительный EmissionPointCount.
SetEmissionShapeOffsetvoid
public void SetEmissionShapeOffset(Vector3 emissionShapeOffset);Задаёт EmissionShapeOffset. Локальное смещение позиций рождения после EmissionShapeScale: position × scale + offset. Не перемещает Entity источника и не является командой перенести все живые частицы.
| Имя | Тип | По умолчанию |
|---|---|---|
emissionShapeOffset | Vector3 | — |
emissionShapeOffsetЛокальное смещение позиций рождения после EmissionShapeScale: position × scale + offset. Не перемещает Entity источника и не является командой перенести все живые частицы.
SetEmissionShapeScalevoid
public void SetEmissionShapeScale(Vector3 emissionShapeScale);Задаёт EmissionShapeScale. Покомпонентный масштаб локальных позиций рождения перед EmissionShapeOffset. Меняет раскладку, не размер рисуемой частицы и не автоматически VisibilityAabb. Для размера геометрии используйте параметры Scale.
| Имя | Тип | По умолчанию |
|---|---|---|
emissionShapeScale | Vector3 | — |
emissionShapeScaleПокомпонентный масштаб локальных позиций рождения перед EmissionShapeOffset. Меняет раскладку, не размер рисуемой частицы и не автоматически VisibilityAabb. Для размера геометрии используйте параметры Scale.
SetEmissionSphereRadiusvoid
public void SetEmissionSphereRadius(float radius);| Имя | Тип | По умолчанию |
|---|---|---|
radius | float | — |
SetFlatnessvoid
public void SetFlatness(float amount);| Имя | Тип | По умолчанию |
|---|---|---|
amount | float | — |
SetGravityvoid
public void SetGravity(Vector3 accelVec);| Имя | Тип | По умолчанию |
|---|---|---|
accelVec | Vector3 | — |
SetInheritVelocityRatiovoid
public void SetInheritVelocityRatio(double ratio);| Имя | Тип | По умолчанию |
|---|---|---|
ratio | double | — |
SetLifetimeRandomnessvoid
public void SetLifetimeRandomness(double randomness);| Имя | Тип | По умолчанию |
|---|---|---|
randomness | double | — |
SetParamvoid
public void SetParam(ParticleProcessMaterial.Parameter param, Vector2 value);Устанавливает минимальное и максимальное значения указанного param.
Компонент x вектора аргумента соответствует минимуму, а компонент y соответствует максимуму.
| Имя | Тип | По умолчанию |
|---|---|---|
param | ParticleProcessMaterial.Parameter | — |
value | Vector2 | — |
SetParamMaxvoid
public void SetParamMax(ParticleProcessMaterial.Parameter param, float value);Устанавливает максимальный диапазон значений для данного параметра.
| Имя | Тип | По умолчанию |
|---|---|---|
param | ParticleProcessMaterial.Parameter | — |
value | float | — |
SetParamMinvoid
public void SetParamMin(ParticleProcessMaterial.Parameter param, float value);Устанавливает минимальный диапазон значений для данного параметра.
| Имя | Тип | По умолчанию |
|---|---|---|
param | ParticleProcessMaterial.Parameter | — |
value | float | — |
SetParamTexturevoid
public void SetParamTexture(ParticleProcessMaterial.Parameter param, Texture2D texture);Устанавливает Texture2D для указанного ParticleProcessMaterial.Parameter.
| Имя | Тип | По умолчанию |
|---|---|---|
param | ParticleProcessMaterial.Parameter | — |
texture | Texture2D | — |
SetParticleFlagvoid
public void SetParticleFlag(ParticleProcessMaterial.ParticleFlags particleFlag, bool enable);Устанавливает particle_flag в адрес enable.
| Имя | Тип | По умолчанию |
|---|---|---|
particleFlag | ParticleProcessMaterial.ParticleFlags | — |
enable | bool | — |
SetRotation3DMaxvoid
public void SetRotation3DMax(Vector3 rotation3DMax);| Имя | Тип | По умолчанию |
|---|---|---|
rotation3DMax | Vector3 | — |
SetRotation3DMinvoid
public void SetRotation3DMin(Vector3 rotation3DMin);| Имя | Тип | По умолчанию |
|---|---|---|
rotation3DMin | Vector3 | — |
SetRotationVelocity3DCurvevoid
public void SetRotationVelocity3DCurve(Texture2D rotationVelocity3DCurve);| Имя | Тип | По умолчанию |
|---|---|---|
rotationVelocity3DCurve | Texture2D | — |
SetRotationVelocity3DMaxvoid
public void SetRotationVelocity3DMax(Vector3 rotationVelocity3DMax);| Имя | Тип | По умолчанию |
|---|---|---|
rotationVelocity3DMax | Vector3 | — |
SetRotationVelocity3DMinvoid
public void SetRotationVelocity3DMin(Vector3 rotationVelocity3DMin);| Имя | Тип | По умолчанию |
|---|---|---|
rotationVelocity3DMin | Vector3 | — |
SetScale3DMaxvoid
public void SetScale3DMax(Vector3 scale3DMax);| Имя | Тип | По умолчанию |
|---|---|---|
scale3DMax | Vector3 | — |
SetScale3DMinvoid
public void SetScale3DMin(Vector3 scale3DMin);| Имя | Тип | По умолчанию |
|---|---|---|
scale3DMin | Vector3 | — |
SetSpreadvoid
public void SetSpread(float degrees);| Имя | Тип | По умолчанию |
|---|---|---|
degrees | float | — |
SetSubEmitterAmountAtCollisionvoid
public void SetSubEmitterAmountAtCollision(int amount);Задаёт SubEmitterAmountAtCollision. Запрошенные рождения цели для подходящего контакта основной частицы в AtCollision. Без рабочего CollisionMode/коллайдера GPU событие не обеспечивается. Не путайте с сигналами игровой физики.
| Имя | Тип | По умолчанию |
|---|---|---|
amount | int | — |
amountЗапрошенные рождения цели для подходящего контакта основной частицы в AtCollision. Без рабочего CollisionMode/коллайдера GPU событие не обеспечивается. Не путайте с сигналами игровой физики.
SetSubEmitterAmountAtEndvoid
public void SetSubEmitterAmountAtEnd(int amount);Задаёт SubEmitterAmountAtEnd. Запрошенные рождения цели при конце жизни каждой основной частицы в AtEnd. Наличие видимого второго этапа не означает новую Entity; вместимость цели остаётся отдельной.
| Имя | Тип | По умолчанию |
|---|---|---|
amount | int | — |
amountЗапрошенные рождения цели при конце жизни каждой основной частицы в AtEnd. Наличие видимого второго этапа не означает новую Entity; вместимость цели остаётся отдельной.
SetSubEmitterAmountAtStartvoid
public void SetSubEmitterAmountAtStart(int amount);Задаёт SubEmitterAmountAtStart. Запрошенные рождения цели на событие рождения основной частицы в AtStart. Не глобальное число для всей системы; Amount цели и другие ограничения продолжают действовать.
| Имя | Тип | По умолчанию |
|---|---|---|
amount | int | — |
amountЗапрошенные рождения цели на событие рождения основной частицы в AtStart. Не глобальное число для всей системы; Amount цели и другие ограничения продолжают действовать.
SetSubEmitterFrequencyvoid
public void SetSubEmitterFrequency(double hz);Задаёт SubEmitterFrequency. Частота Constant в герцах для активной основной частицы. Задавайте конечное положительное число: setter передаёт шейдеру обратный интервал. Шаг симуляции ограничивает реализацию; это не точная гарантия произвольной частоты независимо от FPS.
| Имя | Тип | По умолчанию |
|---|---|---|
hz | double | — |
hzЧастота Constant в герцах для активной основной частицы. Задавайте конечное положительное число: setter передаёт шейдеру обратный интервал. Шаг симуляции ограничивает реализацию; это не точная гарантия произвольной частоты независимо от FPS.
SetSubEmitterKeepVelocityvoid
public void SetSubEmitterKeepVelocity(bool enable);Задаёт SubEmitterKeepVelocity. Передаёт скорость основной частицы в запрос рождения цели. В текущем шейдерном пути переданная скорость может заменить начальную инициализацию скорости цели; не считайте это простым сложением всех её настроек.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableПередаёт скорость основной частицы в запрос рождения цели. В текущем шейдерном пути переданная скорость может заменить начальную инициализацию скорости цели; не считайте это простым сложением всех её настроек.
SetSubEmitterModevoid
public void SetSubEmitterMode(ParticleProcessMaterial.SubEmitterModeEnum mode);Задаёт SubEmitterMode. Событие передачи рождения в назначенную GpuParticles3D.SubEmitter: Disabled, Constant, AtStart, AtEnd или AtCollision. Одного режима без действующей связи недостаточно. AtCollision требует столкновений GPU; Compatibility не поддерживает активные режимы в текущем коде.
| Имя | Тип | По умолчанию |
|---|---|---|
mode | ParticleProcessMaterial.SubEmitterModeEnum | — |
modeСобытие передачи рождения в назначенную GpuParticles3D.SubEmitter: Disabled, Constant, AtStart, AtEnd или AtCollision. Одного режима без действующей связи недостаточно. AtCollision требует столкновений GPU; Compatibility не поддерживает активные режимы в текущем коде.
SetTurbulenceEnabledvoid
public void SetTurbulenceEnabled(bool turbulenceEnabled);Устанавливает настройку материала. Включает процедурное поле турбулентности для изменения направления движения GPU-частиц. Само по себе не задаёт начальную скорость; начальное смещение настраивается отдельно.
| Имя | Тип | По умолчанию |
|---|---|---|
turbulenceEnabled | bool | — |
turbulenceEnabledВключает процедурное поле турбулентности для изменения направления движения GPU-частиц. Само по себе не задаёт начальную скорость; начальное смещение настраивается отдельно.
SetTurbulenceNoiseScalevoid
public void SetTurbulenceNoiseScale(float turbulenceNoiseScale);Устанавливает настройку материала. Нелинейный регулятор пространственной детализации шума. Не является расстоянием в метрах или прямой пространственной частотой; подбирайте по траектории при неизменных остальных настройках.
| Имя | Тип | По умолчанию |
|---|---|---|
turbulenceNoiseScale | float | — |
turbulenceNoiseScaleНелинейный регулятор пространственной детализации шума. Не является расстоянием в метрах или прямой пространственной частотой; подбирайте по траектории при неизменных остальных настройках.
SetTurbulenceNoiseSpeedvoid
public void SetTurbulenceNoiseSpeed(Vector3 turbulenceNoiseSpeed);Устанавливает настройку материала. Скорость перемещения поля шума во времени, не скорость частиц. Для неподвижного поля задайте Vector3.Zero и также обнулите TurbulenceNoiseSpeedRandom.
| Имя | Тип | По умолчанию |
|---|---|---|
turbulenceNoiseSpeed | Vector3 | — |
turbulenceNoiseSpeedСкорость перемещения поля шума во времени, не скорость частиц. Для неподвижного поля задайте Vector3.Zero и также обнулите TurbulenceNoiseSpeedRandom.
SetTurbulenceNoiseSpeedRandomvoid
public void SetTurbulenceNoiseSpeedRandom(float turbulenceNoiseSpeedRandom);Устанавливает настройку материала. Скорость изменения дополнительной координаты процедурного шума во времени. При ненулевом значении поле может меняться даже с TurbulenceNoiseSpeed = Vector3.Zero.
| Имя | Тип | По умолчанию |
|---|---|---|
turbulenceNoiseSpeedRandom | float | — |
turbulenceNoiseSpeedRandomСкорость изменения дополнительной координаты процедурного шума во времени. При ненулевом значении поле может меняться даже с TurbulenceNoiseSpeed = Vector3.Zero.
SetTurbulenceNoiseStrengthvoid
public void SetTurbulenceNoiseStrength(float turbulenceNoiseStrength);Устанавливает настройку материала. Контраст и детализация направлений процедурного шума. Это не прямая сила или скорость частицы; увеличение значения не гарантирует ускорения.
| Имя | Тип | По умолчанию |
|---|---|---|
turbulenceNoiseStrength | float | — |
turbulenceNoiseStrengthКонтраст и детализация направлений процедурного шума. Это не прямая сила или скорость частицы; увеличение значения не гарантирует ускорения.
SetUseRotation3Dvoid
public void SetUseRotation3D(bool usingRotation3D);| Имя | Тип | По умолчанию |
|---|---|---|
usingRotation3D | bool | — |
SetUseScale3Dvoid
public void SetUseScale3D(bool usingScale3D);| Имя | Тип | По умолчанию |
|---|---|---|
usingScale3D | bool | — |
SetUsingRotationVelocity3Dvoid
public void SetUsingRotationVelocity3D(bool useRotationVelocity3D);| Имя | Тип | По умолчанию |
|---|---|---|
useRotationVelocity3D | bool | — |
SetVelocityLimitCurvevoid
public void SetVelocityLimitCurve(Texture2D curve);| Имя | Тип | По умолчанию |
|---|---|---|
curve | Texture2D | — |
SetVelocityPivotvoid
public void SetVelocityPivot(Vector3 pivot);| Имя | Тип | По умолчанию |
|---|---|---|
pivot | Vector3 | — |
Сигналы и события1
EmissionShapeChangedСобытие
public event Action EmissionShapeChanged;Выпускается, когда форма излучения этого материала каким-либо образом изменяется. Это включает изменения ParticleProcessMaterial.EmissionShape, ParticleProcessMaterial.EmissionShapeScale или ParticleProcessMaterial.EmissionSphereRadius, а также любые другие свойства, которые влияют на смещение, размер, масштаб или ориентацию формы излучения.
Примечание: Этот сигнал выдается только внутри редактора по соображениям производительности.
ParticleProcessMaterial.CollisionModeEnum
| Значение | Описание |
|---|---|
Disabled = 0 | Никаких столкновений для частиц. Частицы будут проходить через узлы |
HideOnContact = 2 | Скрыть частицы мгновенно при столкновении с узлом |
Max = 3 | Представляет размер перечисления |
Rigid = 1 | Столкновение в стиле |
ParticleProcessMaterial.EmissionShapeEnum
| Значение | Описание |
|---|---|
Box = 3 | Частицы будут испускаться в объеме коробки. |
DirectedPoints = 5 | Частицы будут испускаться в позиции, определяемой путем выборки случайной точки на |
Max = 7 | Представляет размер перечисления |
Point = 0 | Все частицы будут испускаться из одной точки. |
Points = 4 | Частицы будут испускаться в позиции, определяемой путем выборки случайной точки на |
Ring = 6 | Частицы будут выбрасываться в кольцо или цилиндр. |
Sphere = 1 | Частицы будут испускаться в объеме сферы. |
SphereSurface = 2 | Частицы будут испускаться на поверхность сферы. |
ParticleProcessMaterial.Parameter
ParticleProcessMaterial.ParticleFlags
| Значение | Описание |
|---|---|
AlignYToVelocity = 0 | Использование с |
DampingAsFriction = 3 | Использование с |
DisableZ = 2 | Используйте с |
InheritEmitterScale = 4 | Использование с |
Max = 6 | Представляет размер перечисления |
PreserveColor = 5 | Использование с |
RotateY = 1 | Использование с |
ParticleProcessMaterial.SubEmitterModeEnum
| Значение | Описание |
|---|---|
AtCollision = 3 | Субизлучатель испускается при столкновении частиц. |
AtEnd = 2 | Субизлучатель испускается в конце времени жизни частицы. |
AtStart = 4 | Субизлучатель испускается при появлении частицы. |
Constant = 1 | Субизлучатель генерирует данные с постоянным интервалом, определяемым параметром Субтитры: |
Disabled = 0 | Дополнительный субэмиттер отключен. |
Max = 5 | Представляет размер перечисления |