How to blur a ParallaxLayer

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By whiteshampoo

Hi,

is there an easy way to blur a whole ParallaxLayer?
I tried it with a shader, which uses textureLod. But it does not blur at all OR nothing is displayed :confused:

The ParallaxLayer has only 1 child, which is a Tilemap. I also tried to blur the Tilemap, but it blurs each tile by itself and not the whole map, which looks pretty crappy…

:bust_in_silhouette: Reply From: whiteshampoo

Maybe someone could find this useful.
If you have a better solution, PLEASE let me know!!!

I figured out a way that works, but i don’t know, if it is the best/correct way.
It works with Backbuffercopies:

NodeLayout

The BackbufferCopy-CopyMode needs to be “Viewport”
The shader is in the BlurLayer, and these Polygon2D are covering the whole viewport.

The result is something like this:

Result

Here is the shader-code:

shader_type canvas_item;

void fragment()
{
	COLOR = textureLod(SCREEN_TEXTURE, SCREEN_UV, 1.0);
}

Your solution allow to blur the foreground, but the main layer is also affected.

enter image description here

luislodosm | 2020-10-19 13:25