The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add
SizeOverLifetimeModifier
. - Add
PositionCircleModifier
to allow spawning from a circle or disc. - Revamped spawning system:
SpawnMode
is gone;Spawner
s are constructed with associated functionsnew
,once
,rate
, andburst
.- Spawners can be reset with
Spawner::reset
. This gives control over when to spawn a burst of particles. - Spawners can be activated or deactivated with
Spawner::set_active
. ParticleEffectBundle
s can be initialized with a spawner withParticleEffectBundle::with_spawner
.
- Implemented
ToWgslFloat
forVec2
/Vec3
/Vec4
. - Implemented
ToWgslFloat
forValue<f32>
. - Derive-implemented
PartialEq
forValue<T>
andSpawner
. - Implemented randomization for randomized spawning parameters
- New force field effect:
- Add
ForceFieldModifier
to allow attraction or repulsion from point sources. - Add
ForceFieldParam
in both the modifiers and the particle update shader. - Add
force_field
example showcasing a repulsor, an attractor and the conforming to sphere functionality.
- Add
- Renamed the
ToWgslFloat
trait intoToWgslString
, and itsto_float_string()
method intoto_wgsl_string()
. Also made the trait public. - Position modifiers now use
Value<f32>
for velocity to allow for random velocity.
- Fixed depth sorting of particles relative to opaque objects. Particles are now correctly hidden when behind opaque objects.
- Fixed truncation in compute workgroup count preventing update of some particles, and in degenerate cases (
capacity < 64
) completely disabling update. - Made the
GradientKey<T>::ratio
field private to avoid any modification viaGradient<T>::keys_mut()
which would corrupt the internal sorting of keys.
- Fix homepage link in
Cargo.toml
- Bevy 0.6.1 fixed build on nightly, thereby fixing docs.rs builds
Initial alpha version. Lots of things missing, but the barebone functionality is there. See the README.md for the list of planned and implemented features.