I saw this video on Youtube talking about Panini Projection and wanted to implement on Minecraft.
My knowledge about shaders is petty much zero so I just vibe coded something and got a pretty good result.
My issue is that the effect also affect the first person hand, making it all squished, I tried making a mask of the hand, but that just result in a duplicated hand (one affected by the effect and the other not affected). I searched for other solutions but the only way I found would be to convert the effect to a Vertex Shader.
So my question is, how can I exclude the hand out of the Panini Projection effect without remaking it a Vertex Shader? Is that's even possible?
Most games use rectilinear projection so high FOVs cause extreme stretching of the edges of the screen. This can be solved by using Panini projection, so even very high FOVs like 150 degrees (vertically) are playable. I also demonstrate how I implement this in Godot.