Browse Source

Merge pull request #75398 from newobj/issue-75218

Update GPUParticles2D/3D speed scale on ENTER_TREE
Yuri Sizov 2 years ago
parent
commit
1222d35cdd
2 changed files with 10 additions and 0 deletions
  1. 5 0
      scene/2d/gpu_particles_2d.cpp
  2. 5 0
      scene/3d/gpu_particles_3d.cpp

+ 5 - 0
scene/2d/gpu_particles_2d.cpp

@@ -538,6 +538,11 @@ void GPUParticles2D::_notification(int p_what) {
 			if (sub_emitter != NodePath()) {
 			if (sub_emitter != NodePath()) {
 				_attach_sub_emitter();
 				_attach_sub_emitter();
 			}
 			}
+			if (can_process()) {
+				RS::get_singleton()->particles_set_speed_scale(particles, speed_scale);
+			} else {
+				RS::get_singleton()->particles_set_speed_scale(particles, 0);
+			}
 		} break;
 		} break;
 
 
 		case NOTIFICATION_EXIT_TREE: {
 		case NOTIFICATION_EXIT_TREE: {

+ 5 - 0
scene/3d/gpu_particles_3d.cpp

@@ -439,6 +439,11 @@ void GPUParticles3D::_notification(int p_what) {
 			if (sub_emitter != NodePath()) {
 			if (sub_emitter != NodePath()) {
 				_attach_sub_emitter();
 				_attach_sub_emitter();
 			}
 			}
+			if (can_process()) {
+				RS::get_singleton()->particles_set_speed_scale(particles, speed_scale);
+			} else {
+				RS::get_singleton()->particles_set_speed_scale(particles, 0);
+			}
 		} break;
 		} break;
 
 
 		case NOTIFICATION_EXIT_TREE: {
 		case NOTIFICATION_EXIT_TREE: {