[UE5.1] Radial shredding transition effect

Just want to recreate and share an image transition effect which is quite old-school from about the 80s or 90s. I’m not entirely sure when and who did this because it is too old for anyone to verify.
If you were a couch potato in the 80s/90s, you are almost certainly to have seen this effect on TV. When I was a child and came across this mesmerizing transition while watching VHS, I couldn’t be helped but paused the tape and inspect this effect frame by frame.

Arguably this is one of the earliest known “technical art” in the video production industry. While the effect itself isn’t that complicated (it still took me few hours to get it right in UE material), you have to admire the knowledge involved and there was no material/shader graph (most importantly no internet!) back then. It was all about coding by hand.

Obviously we need polar coord here. Because we will be overlapping the “in” (right side) and “out” (inverted) images, everything needs to be prepared in 2 sets.
Parameter “Division” determines how much the image is “shredded”, IOW how many shreds.

Then we will randomize the polar coord angle by Vector Noise so the shredding happens in random order. (If you want the shredding transition in non-random order, be my guest and skip the noise step.)
The “Time” to “Lerp” nodes here are for looping inspection only. Realistically you’d replace it with a scalar parameter to control the scrolling of the shreds directly.

We need the clamps here to prevent the shreds from exceeding where we don’t want them to show.
In the lower (inverted) side, I also perform a power to hasten the scrolling speed, otherwise the shreds would take too long to enter or exit.

Here we finally define the display range of each shred and compare the opacity values to determine which side of the shred to show.

We can do Scene Color too. Same idea.

Full disclaimer: it is almost certainly not the exact replica of the original effect. I believe I handle the enter/exit of the shreds quite differently, and not the most elegant way possible, but it is what it is.

Have fun.


Awesome, thank you :+1: