You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-29 16:16:38 +00:00
Fix floating point precision errors when setting particle trail length
This commit is contained in:
@@ -185,7 +185,7 @@ void GPUParticles2D::set_trail_enabled(bool p_enabled) {
|
||||
}
|
||||
|
||||
void GPUParticles2D::set_trail_lifetime(double p_seconds) {
|
||||
ERR_FAIL_COND(p_seconds < 0.01);
|
||||
ERR_FAIL_COND(p_seconds < 0.01 - CMP_EPSILON);
|
||||
trail_lifetime = p_seconds;
|
||||
RS::get_singleton()->particles_set_trails(particles, trail_enabled, trail_lifetime);
|
||||
queue_redraw();
|
||||
|
||||
@@ -244,7 +244,7 @@ void GPUParticles3D::set_trail_enabled(bool p_enabled) {
|
||||
}
|
||||
|
||||
void GPUParticles3D::set_trail_lifetime(double p_seconds) {
|
||||
ERR_FAIL_COND(p_seconds < 0.01);
|
||||
ERR_FAIL_COND(p_seconds < 0.01 - CMP_EPSILON);
|
||||
trail_lifetime = p_seconds;
|
||||
RS::get_singleton()->particles_set_trails(particles, trail_enabled, trail_lifetime);
|
||||
}
|
||||
|
||||
@@ -439,7 +439,7 @@ void ParticlesStorage::particles_set_fractional_delta(RID p_particles, bool p_en
|
||||
void ParticlesStorage::particles_set_trails(RID p_particles, bool p_enable, double p_length) {
|
||||
Particles *particles = particles_owner.get_or_null(p_particles);
|
||||
ERR_FAIL_NULL(particles);
|
||||
ERR_FAIL_COND(p_length < 0.01);
|
||||
ERR_FAIL_COND(p_length < 0.01 - CMP_EPSILON);
|
||||
p_length = MIN(10.0, p_length);
|
||||
|
||||
particles->trails_enabled = p_enable;
|
||||
|
||||
Reference in New Issue
Block a user