Just a note: CPUParticles is being put on indefinite hiatus in Godot. They stated in "State of particles and future updates" that "From Godot 4.2 onwards, new features for CPUParticles will not be accepted unless they have a counterpart in GPUParticles. However, contributions to bring CPU particles to feature parity are welcome."
@@bjrneoma3046 You can add textures to GPU particles which unlocks many, many more possibilities, like having pixel-art explosions using GPU particles (see this : ruclips.net/video/F1Fyj3Lh_Pc/видео.html)
your videos are the only ones that work for me! and i think its because of the way you teach, you take your time and show it all in a readable manner. great video!
Great Video, nice and easy explanations! As you said the best way is just to play around with the settings. Its so much fun, something things happen you never expected.
For rain particles, I've seen several tutorials do it this way. None seem to catch that if you have a camera that follows the player, and the particles are emitted from just above that camera, the particles' lifespans will create a bunching effect when the player moves up/down too quickly. In tutorials where they're showing the weather effects in their games, you can sometimes catch this if you watch closely. Have you noticed this issue in any of your games? Any ideas for fixing it? One of the advantages of having the emitter follow the player camera is that only the particles that the player needs to see are being emitted. But I think I've played with every setting trying to eliminate the bunching effect with no luck so far. I imagine the key is somewhere in adjusting the particles' velocity, acceleration, or lifespan. I've also tried adjusting the size, shape and position of the emission box. While I can minimize the effect, I haven't been able to completely eliminate it. Maybe there's a way to adjust some of these values with code based on the player's movement but that seems really complicated for my level of math & coding skill for what is purely a visual 'nice to have'/polish element? I thought the obvious, easier solution might be to have the weather particles emit across the whole map instead of only for the player camera. It does eliminate the problem of particles visually bunching when the player changes vertical direction. However, it introduces a new problem if you want the rain drops to be slow (e.g. light rain as opposed to fast-moving, storm-like rain), and/or if you want your particles to have varying lifespans (e.g. some rain drops hitting the ground before others - as you mentioned in the video this can be added with some animations, etc.). If you want slow rain drops with variable lifespan and you emit them across the whole map, it will always rain more heavily in the top areas of the map compared to the bottom areas. So, do I make the emission box cover nearly the entire map? I feel very lost in the weeds. I never comment on RUclips videos but I clearly need help lol I just don't want extra raindrops bunched together when my player moves up & down :')
the bunching effect seems inevitable if you have your particles following the player/camera because as the camera goes up while the particles are emitting, the next group of particles will emit a bit late. and when the camera is going down, the next group of particles will emit early(or even on top of the previous particles) causing the effect. emission box covering the entire should be bad for performance. i just got into using particles ig you can make a rainbox, and duplicate it across the map? this way you could also achieve varying levels of rain in different regions of the map. use gpuparticles, and tweak the drawing>visibility_rect property, so the particles are only active when the box is visible on screen. NOTE: this doesn't give the effect where the rain gets the horizontal velocity of the camera as it moves. edit: im using camera smoothening and limits so i had to make a script to update the position of particles manually to the true center using camerainstance.get_screen_center_position. this way i dont even need to attach my particle node to my camera. so i found a half baked solution to reduce the bunching effect for me. is by reducing the amount_ratio as the fall velocity increases. i do amount_ratio = 1 / 1.01 ^ camera_velocity if the fall velocity is greater than 0 which can be calculated by doing (current_camera_position - last_camera_position)/delta. since the max fall velocity in my game is set to 500. this works for me. going up too fast doesn't seem to cause any problems. one problem is you fall too fast, and beat the rain, there are no rain particles underneath you. so :/
Great tutorial, very well explain and useful!! On a side note my OCD is forcing me to comment that the fire color gradient should be the other way around, starting with a bright yellow and ending in red
Great video!!! Thank you so so much. I was hoping to know why you recommend CPU over GPU even when saying the GPU is more performant. What is your reasoning for picking the CPU for most tasks?
just so everything is running on the CPU.. if we had a big game with a lot going on then most likely you'd use a GPU, so that your able to take some of the load off the CPU to in turn have the game run smoother.. because the CPU wont be over crowed if that makes sense. Ig if you really think about it.. it doesnt make to much of a difference.
Is there something initially you have to do in order to get the particle to "play" or show? From the jump when I add the CPUparticles2D, nothing is playing in my scene. I've checked and everything is visible and I have followed your setup for the explosion, but just not getting anything at all the show on the screen.
Question, how do I change the asset for the rain? Meaning, instead of wanting it to rain, i want leaf fall some times during the gameplay. I've got the amount and gravity and things right. I also have a png leaf asset. But how do I change the circle/rectangle particles to leaves?
Just a note: CPUParticles is being put on indefinite hiatus in Godot. They stated in "State of particles and future updates" that "From Godot 4.2 onwards, new features for CPUParticles will not be accepted unless they have a counterpart in GPUParticles. However, contributions to bring CPU particles to feature parity are welcome."
Good to know! Thanks for adding this comment :)
I had no idea which one I should use, but now I'll stick with GPUPatricles.
@@bjrneoma3046 You can add textures to GPU particles which unlocks many, many more possibilities, like having pixel-art explosions using GPU particles (see this : ruclips.net/video/F1Fyj3Lh_Pc/видео.html)
GPU particles seem pretty half baked by comparison tho. There isnt any of this stuff like scale, gravity, initial velocity, etc.
Yes there is @@Anon-te6uq
your videos are the only ones that work for me! and i think its because of the way you teach, you take your time and show it all in a readable manner. great video!
happy to hear that! thank you so much!
Ikr, his method really sticks, I love it
Thank you for the content! This is pure gold!
IT CAN BE APPLIED TO 3D EXPLOSIONS in GODOT!!!
Ooo happy to hear!! thank you so much!
This is great, I always wanted to know how to do particles in this engine, thanks for the tutorial
thanks for the tutorial matte, we need more tutorials like yours!
br?
Good tutorial - most useful I've seen on this, making it clear the impact of each setting - thanks!
glad it was helpful! thanks!
Thanks for the awesome tutorial I am learning new thing every day 😁
so happy to hear that! thank you!
Dang. This was very simple and well laid out. I thought particles would be difficult but you made it look simple.
so glad they are simple! thanks, glad i was able to help!
Great video. I assumed particles would be scary but now I see it isn't and you just have to play around with the settings to get the effects you want!
Great Video, nice and easy explanations! As you said the best way is just to play around with the settings. Its so much fun, something things happen you never expected.
so true!! Its like a little adventure lol!
I was scare of that node but now i wanna see what things i can do with that, Thanks!!
goodluck experimenting with it!! let me know how it goes!!
Very concise and informative, love it. Would be nice to add a few more examples just to go through the most options in the inspector
thank you very much! you're right about that!! sorry!!
I appreciate your video DevWorm. I'm in need of a couple particles for a Game Jam project I'm working on. Thanks for the information!
so happy to hear!! I hope everything came together perfectly for you!! Goodluck in the game jam!!! I'm wishing you the best!
Thanks for this, it's great! Have a great Christmas mate!
you too brother!
For rain particles, I've seen several tutorials do it this way. None seem to catch that if you have a camera that follows the player, and the particles are emitted from just above that camera, the particles' lifespans will create a bunching effect when the player moves up/down too quickly. In tutorials where they're showing the weather effects in their games, you can sometimes catch this if you watch closely. Have you noticed this issue in any of your games? Any ideas for fixing it?
One of the advantages of having the emitter follow the player camera is that only the particles that the player needs to see are being emitted. But I think I've played with every setting trying to eliminate the bunching effect with no luck so far. I imagine the key is somewhere in adjusting the particles' velocity, acceleration, or lifespan. I've also tried adjusting the size, shape and position of the emission box. While I can minimize the effect, I haven't been able to completely eliminate it. Maybe there's a way to adjust some of these values with code based on the player's movement but that seems really complicated for my level of math & coding skill for what is purely a visual 'nice to have'/polish element?
I thought the obvious, easier solution might be to have the weather particles emit across the whole map instead of only for the player camera. It does eliminate the problem of particles visually bunching when the player changes vertical direction. However, it introduces a new problem if you want the rain drops to be slow (e.g. light rain as opposed to fast-moving, storm-like rain), and/or if you want your particles to have varying lifespans (e.g. some rain drops hitting the ground before others - as you mentioned in the video this can be added with some animations, etc.).
If you want slow rain drops with variable lifespan and you emit them across the whole map, it will always rain more heavily in the top areas of the map compared to the bottom areas. So, do I make the emission box cover nearly the entire map?
I feel very lost in the weeds. I never comment on RUclips videos but I clearly need help lol I just don't want extra raindrops bunched together when my player moves up & down :')
Fecing the same issue. I really hope that someone will be able to help
the bunching effect seems inevitable if you have your particles following the player/camera because as the camera goes up while the particles are emitting, the next group of particles will emit a bit late. and when the camera is going down, the next group of particles will emit early(or even on top of the previous particles) causing the effect.
emission box covering the entire should be bad for performance. i just got into using particles ig you can make a rainbox, and duplicate it across the map? this way you could also achieve varying levels of rain in different regions of the map. use gpuparticles, and tweak the drawing>visibility_rect property, so the particles are only active when the box is visible on screen. NOTE: this doesn't give the effect where the rain gets the horizontal velocity of the camera as it moves.
edit: im using camera smoothening and limits so i had to make a script to update the position of particles manually to the true center using camerainstance.get_screen_center_position. this way i dont even need to attach my particle node to my camera. so i found a half baked solution to reduce the bunching effect for me. is by reducing the amount_ratio as the fall velocity increases. i do amount_ratio = 1 / 1.01 ^ camera_velocity if the fall velocity is greater than 0 which can be calculated by doing (current_camera_position - last_camera_position)/delta. since the max fall velocity in my game is set to 500. this works for me. going up too fast doesn't seem to cause any problems. one problem is you fall too fast, and beat the rain, there are no rain particles underneath you. so :/
Great tutorial, very well explain and useful!!
On a side note my OCD is forcing me to comment that the fire color gradient should be the other way around, starting with a bright yellow and ending in red
i guess youre right about the fire lol, glad it was helpful though! thanks!
Godot legend, thank you
Pure content, thanks for the great info.
wonderful! thanks!
goated tutorial
thank you!!
Thank you so much 😍
thank you! I am so glad it was able to help!
Hey, thank you for the particle tutorial! I guess it's time for the shader tutorial now :)
yes very soon!
Nice job!
thank you!
thanks for the tutorial💓
thank you so much!! hope it helped!
Were you in a rush when you've made this video ? There is no need to talk so fast :). Except that, great work and very clear, thanks.
sorry!! glad you were still able to get the information out of it!
Great video!!! Thank you so so much. I was hoping to know why you recommend CPU over GPU even when saying the GPU is more performant. What is your reasoning for picking the CPU for most tasks?
just so everything is running on the CPU.. if we had a big game with a lot going on then most likely you'd use a GPU, so that your able to take some of the load off the CPU to in turn have the game run smoother.. because the CPU wont be over crowed if that makes sense. Ig if you really think about it.. it doesnt make to much of a difference.
THANKS SO MUCH!
thank you so much!!! Hope it helps!
Is there something initially you have to do in order to get the particle to "play" or show? From the jump when I add the CPUparticles2D, nothing is playing in my scene. I've checked and everything is visible and I have followed your setup for the explosion, but just not getting anything at all the show on the screen.
As soon as you add the CPUParticles2D, you can see the particles start falling in your scene editor, I get nothing.
Just zoom in at more than 700% They will be there
Yo! You got any ways to save the particles ?
Something like saving the blood particles on the floor and stuff like this. I'd really appreciate this!
now the real question ive been having difficulty with is making these effects trigger on procs from spells or talents.
Question, how do I change the asset for the rain?
Meaning, instead of wanting it to rain, i want leaf fall some times during the gameplay.
I've got the amount and gravity and things right. I also have a png leaf asset. But how do I change the circle/rectangle particles to leaves?
ok bro i got a question which one should i use for android? cpuparticle or gpu?
Need a full GPU particles run through
Thanks
of course anytime! thank you so much!
How would you get rid of that line that forms in your fire effect?
I would like to know also, because that is the only thing that makes it look not exactly like a real fire. Other than that it is very cool.
"A sphere is going to have a sphere"
DevWorm - 2023
thats the best quote of the year lol
Can u make tut how to make pickaxe power? Like 10% pickaxe power mine wood, 20% pickaxe power mine stone( like a terraria)
just use a variable like pickaxe power and change it's value when you desire to, then check the value when you mine a material
i love your tutorials, but for the love of GOD SLOW DOWN XD
ahh i’m sorry! i hope they are helpful still lol but i really will try and slow down more
Mind talking slowly
this literally hardly taught me anything lmao
Why Godot don't upgrade into become number 1 game engine.. if he want to?? Ultra engine + Godot never happen why???