Retro Screen FX - 9 CRT, VHS, Pixel & Palette Shaders for Godot 4
See it running in Last Ember, a free browser game: https://inkharbor.itch.io/last-ember
Try it in your browser above before you buy.
Godot version: Works with Godot 4.4+. Tested on 4.4 and 4.7 (Windows, NVIDIA GPU, Compatibility and Forward+ on 4.7). Does not run on 4.3 (four shaders use the 4.4 hint_enum uniform hint). Not tested: Mobile renderer, web export.
Retro Screen FX is a CRT shader and VHS shader pack for Godot 4: scanlines, curvature, pixel and palette looks, ready to drop in as post-processing.
Launch sale until Oct 16: discounted price shown on this page, one sale only.
Give your Godot game a retro screen look: curved CRT glass, worn tape, chunky pixels, a 4-colour palette, glitches, a dot-matrix LCD grid, old film.
Retro Screen FX is 9 full-screen shaders for Godot 4.7 with 37 ready-made presets, a drop-in RSFXLayer node that stacks up to three effects, and a demo project. Add the node, pick a preset, done. Every setting is also a normal shader uniform you can animate or change from code.
How it works
Each effect is a canvas_item shader on a full-screen rect inside a CanvasLayer. RSFXLayer sets that up for you. It filters whatever is drawn below it, so the same effects work over a 2D game and a 3D game. There is no plugin to enable and no CompositorEffect.
What's inside
| Item | What it is |
|---|---|
| CRT | Curved glass, scanlines, aperture grille / shadow mask / slot mask, bloom, vignette, flicker, roll bar, green or amber phosphor tint |
| VHS | Tape wobble, drifting tracking bands, head-switching noise, colour bleed and smear, dropouts |
| Pixelate | Chunky pixels at a virtual resolution you choose, optional posterise and pixel grid |
| Palette Quantize | Snap colours to a limited palette (7 built in, or your own from a one-row texture). No dithering, so gradients become flat bands |
| Chromatic Aberration | Radial lens fringing, lateral split, or both |
| Scanlines | Horizontal or vertical, scrolling, interlace |
| Glitch | Block displacement, RGB split, smears, slice tearing, channel swaps, optional bursts |
| LCD Grid | Dot-matrix cell grid at a virtual resolution, two- or three-tone or full colour, pixel shadow, smear echo (a fixed spatial echo, not temporal ghosting) |
| Film Grain | Animated grain, gate weave, scratches, dust, flicker, sepia/fade grade |
| Presets | 37, as ready-to-load resources |
| RSFXLayer | CanvasLayer node: choose a preset, stack up to three effects, intensity slider |
| Demo project | Showcase scene with a toggle UI, plus 2D and 3D usage examples |
| README | Install steps, preset list and settings reference |
| LICENSE.txt | Licence terms |
How to install
- Download the zip and unzip it.
- Copy the
addons/retro_screen_fx/folder into your project'saddons/folder. Nothing to enable in Project Settings. - In your scene, add an
RSFXLayernode. - In the Inspector, pick a preset. Run the scene.
- To change values, edit the preset's shader parameters, or set them from code with
set_shader_parameter(orset_paramon the layer).
The demo project opens directly in Godot 4.7 if you want to look around first.
Renderers and testing
Made for and tested on Godot 4.7 stable. Every one of the 37 presets ran without shader or script errors in Forward+, Mobile and Compatibility, on Windows 11 with an NVIDIA RTX 2060. That is the only hardware tested. I have not run it in a browser (web export), on macOS, Linux, Android, iOS or other GPUs. If something breaks for you, comment with your renderer, OS and GPU and I'll look.
Honest limits
- Screen-space effects sit on the screen, not on objects. When the camera moves, patterns such as scanlines and the LCD grid stay fixed, which is how a real screen behaves.
- They filter the final image of the layers below. They can't read depth, and can't tell HUD from world: keep your HUD on a CanvasLayer above the effect layer.
- Stacking several effects costs more per pixel. Check performance on your target hardware.
- Tested only on Godot 4.7 and one Windows PC (see above).
- No dithering: palette and pixelate gradients become flat bands.
- CRT curvature bends the whole picture, so mouse positions drift from the world near the edges. Keep curvature low if you need precise pointing.
- Flicker, interlace, roll bars and glitch bursts can bother photosensitive players. Offer a way to turn them off; the README says how.
- These are shaders and presets, not 3D models, sprites or sound.
FAQ
*Does it work in 2D?* Yes. It filters whatever is rendered below its layer, 2D or 3D.
*Which Godot version?* 4.7. Other 4.x versions are untested.
*Mobile or Compatibility?* Yes. All presets ran without errors in both on one PC. Other hardware is untested. See above.
*Can I use it in a commercial game?* Yes. Short version below.
*Can I animate the effects?* Yes. Every setting is a shader uniform, so AnimationPlayer, tweens and code all work.
*Do I have to credit you?* No, but it's appreciated.
*Is it a plugin? Does it need C#?* No plugin to enable, no C#. RSFXLayer is GDScript.
*Refunds?* If it doesn't work in your project, tell me and I'll try to fix it. itch.io's refund rules also apply.
Licence (short version)
Use it in any number of your own games and projects, free or commercial, no royalty, credit optional. Modify it for those projects. Don't resell, share or publish the shader files themselves, and keep them out of public repositories. One purchase covers one person, or one company with its staff and contractors. Full text in LICENSE.txt.
AI disclosure
The shader code, GDScript, presets and documentation were written with AI (a large language model) and then run in Godot 4.7. The cover, GIFs and screenshots are captures from Godot of the demo scenes. No AI-generated audio.
Questions and bugs
More from inkharbor
Full packs: Print & Paint FX · Pulse FX 2D · Weather FX 2D · Pixel Sprite FX · Toon Forge 3D · Ember VFX 3D · Hitfeel Kit · Screen Transitions · Settings Menu Kit · Save/Load Kit · Inventory Kit · Dialogue & Quest Kit · Exporter Pro
Free to try: Print & Paint sampler · Exporter (free) · Hitfeel Lite · Screen Transitions Lite · Retro Lite · Pulse Lite · Weather Lite · Pixel Lite · Toon Lite · Ember Lite · Dialogue Lite · Inventory Lite · Last Ember (free game)
Purchase
In order to download this asset pack you must purchase it at or above the minimum price of $6 USD. You will get access to the following files:





Leave a comment
Log in with itch.io to leave a comment.