Impossible to create a Screenshot

I’m trying to create a screenshot from the camera view. Its important to have the freedom to choose the resolution and to have the ability to crop the final Image.
Also i need to have a UMG Widget in the Image with Infos.

With Render Targets I got the big Problem, that there is no Anti-Aliasing…

The “Shot” execCmd cuts all ui out, same goes for “HighResShot” (This cmd also ignores my indispensable ImagePlate!)…

The “BugScreenshot” execCmd is nearly perfect, but hasn’t the crop feature and yet it’s unclear if this cmd works in a shipping build.

From researching i found two interesting functions in UnrealClient.h:

bool ReadPixels (
TArray & OutImageData,
FReadSurfaceDataFlags InFlags,
FIntRect InRect )

bool GetViewportScreenShot (
FViewport * Viewport,
TArray & Bitmap,
const FIntRect & ViewRect )

The second one uses also ReadPixels in a different way…

The problem is, that in both cases the TArray gets filled with zeros…

This thread says, that ReadPixels should only be called inside of GameViewport:: Draw.
I tried this with my custom ViewportClient. But this isnt working right now, the Draw function seems not to be called… Although i set my custom class as my “Game Viewport Client Class” in the Settings an .ini file…

Has anyone better experiences with this Topic?

So calling ReadPixels in my custom GameViewport::Draw() function is working. Anybody got an idea how to take Screenshot with this method in any resolution without a visible change of the game resolution?