Blur Extension

I’ve made an extension that blurs your screen in makecode. It doesn’t have too many features now and can only blur the on-screen image that was directly before the filter was applied, but changes will come soon including a real-time blur filter, the ability to blur any image and put it on-screen, and bug fixes!

Type the text below in the search bar of the extensions and click enter. The extension should show up. Click on it and you should be good!


1 Like

This is nothing about the extension here, just the other one, so I tried it with something like a platformer of mine and this be looking like a DS game
maz test

Although, it probably shouldn’t be used in a condition as the screen kept crunching every time a level is beaten and some sprites can’t be scaled to that size

I think the blur extension works now. Also, all you need for the fake 3d extension is just one block at the beginning and it is going to be working for the rest of the game. The more times you use this block, the more times it will squish by x2 (and lag) because multiple filters can be applied over each other. Also, I haven’t found a way to revert this once the block runs. You can always have sprites higher than Z=0 on the top half if you want (kind of making it like a DS like you said lol)

I’d say it could be a good idea to have a modified extension that allows screen crunch instead of a sudo 3D seen with games like super mario kart as I think screen crunch can help in some elements

Say, can you help me on something, on how to convert all blocks into one block for en extension like how you have it? thank you in advance

Basically, you’ll need a Github account and to link the project to a repository. Next, you’ll have to convert it to JS and use Makecode’s custom code to make blocks. @shakao has made a good reply to my blur demo when I was trying to do that extension (although it was personalized to my blur extension, it can still help.) Also, there’s a page that might help with the basics, coding an extension, custom blocks, and getting it working for others to see. The playground is a very nice resource for finding out how to code an extension and allows real time testing (although after you’re done, you’ll have to paste the code into the project linked to Github.) I hope this helps and you can get your extension working!

It just doesn’t want to work, I’ll send you the code if you want to figure out the problem, thanks in advance

Hey @Kiwiphoenix364, I would like to add this to the list of Awesome Arcade extensions, but I am unable to figure out how to make the extension work. Could you provide an example?

1 Like

The fade in block will take the current screen, and make each pixel 15x15, then keep bringing it into focus, (14x14, 13x13, 12x12 size pixels) until it gets to 1x1, where the filter will get destroyed. The fade out is the opposite. Currently, the “pixel size for how many ms” block is broken, making only the CURRENT screen blocky, and not any changes that happen in the screen visible. I’d like to replace this with a block that just changes it for a frame, and also uses the buffer so it can register changes under the filter.

Check out this demo:

Press A to do the fade in animation and B to do the fade out animation. Press up to start scolling and down to stop scrolling the background image.

I’ll start working on a way to resolve the issue I mentioned earlier and hopefully make that blocks more intuitive.


I have removed the block in the latest patch, and it will be added back once I get it to work.

1 Like

I FINALLY DID IT!!! Update 2.0 is out! (still the same link, kiwiphoenix364/pxt-blur)

I’ve made real-time support for blur filters (all in TS, with renderables)! I’ve done plenty of optimizations to get a good framerate (IDK if it’d run on hardware, probably not well, if at all). Now it’s pretty selt-explanatory. The fade (or blur in/out) effects are more customizable, even with a block to set how much you want. You can also customize the speed. I’ve added blur filters that you can place in on game update blocks and blur the screen in real time. I’ve built two separate rendering “engines” (that look the same, but operate different), one that is the most efficient in general and for smaller sizes, and one that is better for bigger sizes. I made it automaticaly go to the fastest rendering engine (when the one that is more efficient with bigger pixels is less laggy than the one for small pixels, it will use that one). I hope you like this update because I spent FOREVER on it (like 10 hours, more or less).