diff options
author | QbieShay <cislaghi.ilaria@gmail.com> | 2023-08-13 13:08:52 +0200 |
---|---|---|
committer | QbieShay <cislaghi.ilaria@gmail.com> | 2023-10-10 20:03:35 +0200 |
commit | c228fe1a0d7cf9dc65404f63cddbc0dd85959f2e (patch) | |
tree | 84a3982c1f57246764cb997a61580f3605df051c /scene/3d/gpu_particles_3d.h | |
parent | 6916349697a4339216469e9bf5899b983d78db07 (diff) | |
download | redot-engine-c228fe1a0d7cf9dc65404f63cddbc0dd85959f2e.tar.gz |
Particle internal refactor and additions for more artistic control
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Co-authored-by: Mew Pur Pur <85438892+MewPurPur@users.noreply.github.com>
Co-authored-by: Clay John <claynjohn@gmail.com>
Diffstat (limited to 'scene/3d/gpu_particles_3d.h')
-rw-r--r-- | scene/3d/gpu_particles_3d.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/scene/3d/gpu_particles_3d.h b/scene/3d/gpu_particles_3d.h index f3df4f1929..ae9349817c 100644 --- a/scene/3d/gpu_particles_3d.h +++ b/scene/3d/gpu_particles_3d.h @@ -65,6 +65,7 @@ private: bool signal_canceled = false; bool one_shot = false; int amount = 0; + float amount_ratio = 1.0; double lifetime = 0.0; double pre_process_time = 0.0; real_t explosiveness_ratio = 0.0; @@ -93,6 +94,8 @@ private: double time = 0.0; double emission_time = 0.0; double active_time = 0.0; + float interp_to_end_factor = 0; + Vector3 previous_position; void _attach_sub_emitter(); @@ -120,9 +123,11 @@ public: void set_collision_base_size(real_t p_ratio); void set_trail_enabled(bool p_enabled); void set_trail_lifetime(double p_seconds); + void set_interp_to_end(float p_interp); bool is_emitting() const; int get_amount() const; + double get_lifetime() const; bool get_one_shot() const; double get_pre_process_time() const; @@ -135,6 +140,10 @@ public: real_t get_collision_base_size() const; bool is_trail_enabled() const; double get_trail_lifetime() const; + float get_interp_to_end() const; + + void set_amount_ratio(float p_ratio); + float get_amount_ratio() const; void set_fixed_fps(int p_count); int get_fixed_fps() const; |