Godot's NEW feature is AWESOME

preview_player
Показать описание
Godot's new rendering hooks system allows us to create incredible new effects. Here's what its all about.

The new CompositorEffect class in Godot lets you hook into the rendering at several pre determined spots and add your effect passes to it.
This is very powerful and will allow godot to have great shader effects that was just not possible before.

Even if you are not into shader, this is still a great feature that can help you easily add effects to your game.

····················································································
Want to support me?
····················································································
Godot demo project:

Compositor Effect projects shown in the video:

#godot4 #godot #godotengine #shaders #gdshader
#compositoreffect

CHAPTERS:
0:00 Intro
0:13 Compositor Effects
2:05 Playing with effects
3:23 Creating your effects

----personal notes
Using a new voice recording setup. Using audacity instead of directly from resolve. Also tried increasing the sensitivity and speaking farther away from the mic.
I still struggle making the script feel natural.
Рекомендации по теме
Комментарии
Автор

As someone with very little experience in this, this looks like a huge deal for teams looking to customize the rendering pipeline in Godot. Multi-pass effects are now more easily doable as well. Maybe in the future, Godot will add some options for even less boilerplate if you're looking to layer visual effects within the pipeline.

fritzytg
Автор

When you need to read neighbouring pixels, indeed the only way to deal with this currently is to either make a copy of the screen buffer to read from (like you did), or write into a new buffer and copy that back into the screen buffer. This does come at a price. However there are moments you can be smart about things. For instance with guassian blur you can win speed by first doing a horizontal blur, and then a vertical blur in two passes. The first pass reads from screen texture, blurs horizontally, and writes to the buffer you created. The second pass reads from the buffer, blurs vertically, and writes back into screen texture.

In similar ways you can improve performance by being smart in performing consecutive effects. Effect 1 reads from screen texture and writes into the intermediate buffer, effect 2 reads from the intermediate buffer but writes to screen texture.

BastiaanOlij
Автор

Thanks for highlighting this feature! :)

Metriximor
Автор

This is perfect for anything like cel shaders or outline shaders for anime or cartoon styles.

Kio_Kurashi
Автор

This will be soo perfect for some horror games im gonna work on later during Halloween time!

johnpekkala
Автор

Great video, definitely excited to mess around with this. looks some much easier than the old way of making post-proc effects

michaeljburt
Автор

so with that we can make motion blur apply only to object that actually moved???

henrique.campos
Автор

thats pretty cool, I also think you can add custom anti aliasing as well instead of having to use the default godot aa's

DragonC
Автор

finally. the old way to put screen space shaders felt super hacky, especially in 3d

sebastianooo
Автор

5:50 i think backbuffer copy node does that, but might not be able to use this in this case, since this is not part of the scene tree as far as i understood.

igorgiuseppe
Автор

I wish this was node based, just like in Blender. So everyone can create and share the effect they want. It looks complicated this way.

zaferec
Автор

I haven't been able to figure out how to do the copying screen to a new buffer thing successfully. Are you able to make a video or release all the code for that so I can see how it's done?

NihongoWakannai
Автор

Why when i cklick to "empty" in compositor, i dont have any effects?

-keimurikxe
Автор

I was about to open a proposal about default vignette effect baked in the engine as unity does with URP

Visnii
Автор

*me still using 3.5 cause i cba to convert my project to 4*: Ah yes, very nice :, )

LaurentSparksMusic
Автор

Really wish it was available for GLES3/Compatibility renderer 😅

Robotonlinehue
Автор

Could you share your code for copying the screen buffer? I can't see the ends of the lines in the video because you never scroll sideways. Running compute shaders is very hard :(

pchris
Автор

Ah neat, I have little experience with GLSL and compute shaders, but yeah I found the way to normally do fullscreen effects to be super jank. Shame it can't apply gdshader/visualshader though. Maybe they'll work that in at some point. I'm sure I could learn it enough or just modify something existing though.

Aeduo
Автор

Oh wow it only got this now? It was aorse than a video editor.

Автор

Looks fantastic, have been waiting for something like this for a while
My only issue with it is that it's on the WorldEnvironment, so presumably it can only be used in 3D scenes, which is a shame for 2D. IIRC Unity has something like this but it works independently of whether a scene is 2D or 3D (also it has some nice colour lut stuff)
Still though, a huge step in the right direction and will be great for godots viability as a 3d engine

bigbodge