If you get an understanding of screen UVs, this should be fairly simple to achieve. But to put it simply, when a post process samples a screen, like any texture sample, it can use UV coordinates to tell it which pixel should show what.
This means you can easily mirror half the screen, for example, by mirroring it’s screen UVs. Layer on the complexity and you get a kaleidescope.