Hey N3Z, I’ve been interested in doing a similar thing for a while - I’m guessing you’ve already seen Paul Bourke’s work with the sphercial mirror domes and Unity.
The problem I see with the post process approach, is as it’s a post processing effect then surely you’re not getting the 1:1 mapping you’re after - it’s one thing to distort the camera with a post processing effect, and it’s another entirely to render the scene out as a fisheye in the first place, to map onto a physical dome.
Paul Bourke’s approach in Unity was to create a cubemap with multiple cameras - something you should be able to do in UE4 with a Cubemap Camera (fairly sure that’s a thing - at the least there’s a TextureRenderTargetCube class in Source/Runtime/Engine/Private/TextureRenderTargetCube.cpp).
From there, you could do the same thing of projecting that cubemap onto a mesh with the appropriate distortion, and point an orthographic camera at that mesh. The ortho camera should then give you the right fisheye for the projection.
Now, that’s not very efficient because you’re rendering the cubemap, putting it to a texture, then rendering that lot with an ortho camera, which is a little ridiculous. The other alternative is to try and render a pure fisheye effect by diving deep into the camera code, and writing something similar to the guys at Fisheye Quake - the source is freely available too, but the part you’re interested in is mostly lurking in r_misc.c after R_SetupFrame.
One of the big pluses with Fisheye Quake’s code is they support different distortion lens types by lua scripts, which is quite fancy.