Advanced Distortion makes any 2D sprite move. Add one component to a SpriteRenderer, pick an effect from a dropdown of 56, and it starts animating on its own. There is no material to create, no shader to assign and no extra artwork to draw.
Three sliders do most of the work. Amount is how strong, Speed is how fast, Frequency is how fine. Everything else is optional.
56 EFFECTS IN TWELVE FAMILIES
• Wave - Horizontal, Vertical, Diagonal, Multi Wave, Directional Wave. Flags, curtains, heat wobble.
• Radial - Ripple, Shockwave, Explosion, Implosion, Ring. Impacts, drops on water, hits.
• Lens - Barrel, Pincushion, Fisheye, Bulge, Pinch. Camera lenses and magnifiers.
• Rotation - Swirl, Twirl, Vortex, Spiral, Cyclone. Whirlpools, drains, storms.
• Noise - Perlin, Simplex, Fbm, Voronoi, Domain Warp. Organic drift, from soft rolling to marbled.
• Refraction - Glass, Water, Bubble, Heat, Liquid. Looking through something that is not air.
• Chromatic - RGB Split, Radial Chromatic, Directional Chromatic, Dispersion. Colour fringing and prism light.
• Glitch - Block, Line, Pixel, RGB, Scanline. Broken signals and damaged screens.
• Pixel - Pixel Warp, Pixel Ripple, CRT. Retro effects that stay on the pixel grid.
• Polar - Polar Spiral, Circular, Tunnel, Kaleidoscope. Warps that wrap around a centre.
• Organic - Jelly, Goo, Organic Liquid, Magic, Energy. Wobbles, drips and spell effects.
• Extras - Flag, Squash, Zoom Blur, Shake, Twist. The ones every project ends up needing.
Every mode ships with its own tuned values, so changing the dropdown gives you something that already looks right. Undo works.
FULLY CUSTOMIZABLE
Every effect is a starting point, not a lock. Make it barely there or violent, slow or frantic, one big wave or twenty small ones. Point it in any direction, move its centre anywhere on the sprite, or use Falloff to keep it in the middle and leave the edges alone.
Chroma pulls red, green and blue apart for a colour fringe on any mode, not just the chromatic ones. Sixteen of the effects also add a glow where the distortion is strongest, and that colour is HDR, so turning it up makes it bloom.
Each sprite keeps its own settings while they all share one material, so a scene full of distorted objects never turns into a folder full of materials.
ONE SHADER, NOT FIFTY SIX
All 56 effects live in a single shader and the mode is a plain value, not a shader keyword. Your project does not fill up with shader variants and your build does not grow with every effect you use.
The animation comes from shader time, so a sprite sitting there distorting costs nothing on the CPU. No coroutines, no Update loop, no per-frame allocations.
SUITS ANY 2D GAME
The effects are art-style neutral and work on characters, items, tiles, props, backgrounds and UI sprites alike, because they read the shape of whatever sprite you give them.
Typical uses: hit reactions and damage flashes, heat haze and underwater scenes, portals and spell effects, screen glitches when something breaks, retro CRT looks, and a bit of idle wobble on pickups so the screen never feels static.
BOTH LIGHTING MODES
A dropdown switches between Unlit, where the sprite stays at full brightness, and Lit 2D, where URP's 2D lights tint and shade the sprite while the glow keeps burning on top.
NO CODE REQUIRED
Press Play in either demo scene and drag the sliders while it runs. When you do want code, every setting is a plain serialized value, so Timeline, the Animator and any tween library drive them with no glue code.
The package includes two demo scenes with all 56 effects running at once, and an offline manual with a table of contents, a step-by-step setup guide and a full script reference.
REQUIREMENTS
Unity 6000.0 or newer, and the Universal Render Pipeline with the Shader Graph package. Both ship with the URP 2D template, so a normal URP project already has them.
This package is URP only. The Built-in Render Pipeline and HDRP are not supported.
One thing worth knowing before you buy: a distortion moves pixels, and pixels pushed past the edge of a sprite are cut off. Sprites want a little transparent padding around them, and the Mesh Type in the Texture Importer set to Full Rect. The manual covers both in a page.