Gaussian blur filter for UI (tutorial)

This topic will show you how to achieve a Gaussian blur effect on UI elements, which can help a lot for fluent-like design, present in iOS, macOS and Windows design language.

sidenote: this will only blur 3D space elements, a.k.a. decals, parts and SurfaceGuis. You CAN’T blur ScreenGui elements (e.g. a frame behind another frame), unless you have a surfacegui part move with the camera, just 1-2 studs behind the glass part

thanks to Fractality for making this ModularScript, without it I would not be able to make this tutorial

Original post by Fractality

Step 1: You will need this ModularScript

Step 2: put it in StarterGui / ReplicatedStorage

Edit the ModularScript, Press CTRL + F and type “p0.Material”, You should see a line that says p0.Material = ‘Neon’

Edit the string ‘Neon’ to ‘Glass’

Step 3: Add a frame (or choose a frame you would like to blur) set the border to 0 and the BackgroundTransparency value to 0.5
Step 4: Add a LocalScript located inside the frame you would like to blur, and type:

local neon = require(game:GetService(“ReplicatedStorage”):WaitForChild(“neon”))
neon:BindFrame(script.Parent, {
Transparency = 0.98;
BrickColor = BrickColor.new(‘Institutional white’);
})

Step 5: Add a DepthOfField object in Lighting

Use these settings,:

EXTRA:
In the image above, you may have noticed some bleeding around the edges.

image
(MAKE SURE THE LOCALSCRIPT IS IN THE SUBFRAME “BLUR”!)
I recommend adding a subframe, and naming the subframe “Blur”, and setting both scale offsets to something like -3, don’t forget to turn off Visible in properties for the subframe! You can also try changing with the DoF settings to minimize the bleeding


And you’re done!


There will be some bleeding around the edges but you can always modify the DepthOfField settings while playtesting. Tweening, Scaling and positioning works flawlessly too!
note: Very rounded frames (Circles, or ImageFrames that do not have the shape of a square), will not work with this effect. Sadly, I don’t know of a fix for this.
For circle frames (using UICorner), It’s hard to get the exact bounds of the frame, and this is because if the frame is smaller, that means an offset of 2 would make it a full circle. For a bigger frame, it would have a roundness of like 2 pixels.

TLDR; this doesn’t mean UICorner will not work with this effect at all! It will still look good if you have an offset of 5 or 7.

250 Likes

Wow, Thank you so much.

I’ve been trying to figure out making a UI blur for years, and finally there is one.

Cant wait to play around with this!

15 Likes

Thank you. This is very useful!

1 Like

Oh, that unique never saw that before.

4 Likes

is there a way to remove the outline?

2 Likes

The blurry outline, sort of
You can make a copy of the frame you want to blur, turn off visible property, make it smaller in size then in the script change the frame you want to blur to the hidden one
And also play with the DepthOfField settings, that’ll help too
As of now this is the best solution there is to blurry UI

Any chance you still got this working? Tried implementing it and it doesn’t seem to work anymore, just does some reflection when zooming out. I wonder if the glass material has changed.

The best topic of this year. Thank you!

It didn’t work…
Is it outdated?

2 Likes

Thanks so much! It will be very helpful for my new game!

10 Likes

It works, it’s just extremely specific with the settings, read over the tutorial very carefully

It does indeed work and it loosk very cool!
image

1 Like

not gonna lie i feel bad for people who uses low quality

5 Likes

Position Scale,Offset -3 or Size or both?

modify only the offset /////////

1 Like

( Sorry for bump )

Is this outdated or something? I’ve followed the instructions clearly, and there are no warnings or anything.

I have all the right settings and I don’t know what could be causing this.

If anyone is nice enough to give me a place file or something, it’d be appreciated!

You might be using low graphics quality, but if that’s not the issue, you can try this.


blur.rbxl


2 Likes
1 Like

this is great and all but the sun reflects off of the glass part, is there any way to get around this?

1 Like

You would need to make your game’s lighting look horrible for it to go away, so I don’t think so.

1 Like

does it work with surfaceguis?