How does VFX work in Godot? (for a complete newbie)

Godot Version

Godot 4.2

Question

So I’m working on a pong game and I’ve gotten lot’s of progress on it (e.g, Changing the menu buttons looks), but I realized that one of the things I would need to learn is VFX in order to make stuff like this for my game and future projects:
ref
But I’ve never been introduced to the process of creating VFX at all throughout my game dev journey, So I don’t even know where to start.

Can anyone explain to me how VFX (in general) is supposed to work? because the thing that confuses me even more is the fact that it requires its own programming language. Any suggestions would be appreciated. Thanks in advance :smiley:

Play around with particles.

What lead you to believe VFX requires a unique programming language?

1 Like

This

Also I’m working with 2D, not 3D

Ah this is about making your own shaders, Godot uses GLSL with some twists.

You can get rather far with the built in particle systems.

https://godotshaders.com/ has some great free and open shaders to mess around with

1 Like

Here is the page for 2d particle systems

I thought I’d had to make them on my own, but I’ll check this out and give you more updates later, Thanks :smiley:

The 2D particles page is gonna help out a lot, Thanks! But I still need to learn about stuff like making water or explosions (without particles needed). And the pre-made assets aren’t really gonna get me anywhere. Any suggestions?

The video you linked goes through making a water shader. I just play around with GLSL, usually that is enough, especially for 2D.

This “book of shaders” has been my favorite reference for more complex shader information than the Godot shader doc I also linked.

I’m not sure what you mean by “explosions (without particles needed)” as explosions are the go-to example for particle systems, otherwise they are just a gameplay system?

1 Like

Sorry if I wasn’t actually clear enough, Here’s a reference image btw:
ref
Basically, graphics like these and other types (e.g: Acid, Light e.t.c)

If I’m still not clear for what I’m going for, You can tell me what else I need to explain. Other than that though just give me some insight on how stuff like this is achieved

Something like that can very well be done with Godot’s particle system, just mashes a bunch of images together.

This pack works great, make sure your canvas material is set to blend mode “add”

That video talks about using generated noise textures, but you can (and should) use regular textures too.

So I don’t need Shaders, just the particle system and some textures for them?

For Godot, it’s a really really good starting point.

Obviously I encourage learning any and all systems in games; every example effect you’ve asked for would do very well as a particle node. If you want to learn shaders, try making various dissolves and distorts.

Oh wait, I just remembered that I’d probably still need shaders for effects like black and white, Tiling and offset, Making enemies flash etc. But I as of right now I don’t think they’re things I’ll really need. So I’ll stick to learning how the particles system work and get more advanced from there. Thanks :smiley:

Also, How would you be able to use a sprite to make an effect on a node(e.g, A balloon popping)?

1 Like

I did some research and found This Video and This video, One for Godot 4, and the other for Godot 3 respectively. So I think I can continue from here.

If I ever need help again though, I’ll make a separate topic about it. But I’m glad I don’t have to get into the confusing world of shaders :smiley:

Thank you very much for helping me get more insight on this!

1 Like

This Video also works great too!