Disabling hardware acceleration, or otherwise taking a fullscreen native screenshot

I need to take a screenshot of my HaxeFlixel app, but I figure this is an OpenFL question. A regular screenshot in full-screen mode (windows target) comes out only black. From what I’ve read, this is because the display is being rendered in hardware, so there’s nothing for the OS to copy, even with fancier screenshot tools like Greenshot, which I also tried (same result.)

My display driver apparently doesn’t support forcing it OS-wide not to use hardware acceleration, so I next turned to Project.xml OpenFL settings hoping to disable hardware acceleration there.

The docs don’t say what all the pieces of <window hardware="true" allow-shaders="true" require-shaders="true" depth-buffer="false" stencil-buffer="false" /> do exactly, but setting hardware="false" did not work for me. Could someone explain what the other options are for and maybe share if there’s some magic combination that would allow me to take a screenshot?

Thanks so much for any help.

OBS should be able to handle this. Make sure you set up a “game capture” source.

Unfortunately, it doesn’t seem to do screenshots. Fortunately, there are plenty of ways to extract an image from a video.

Thanks, I guess with “lossless” that should do the trick.

Still curious why hardware="false" didn’t disable hardware acceleration. Thankfully, it didn’t disable the hardware itself either :wink:

Another thing I’ve since discovered, which can be very helpful: Ctrl + F in Adobe Flash Player 20 for Windows makes it full-screen (ESC to exit.) It’s not native output but at least it’s not scaled!