When presenting, WebGL renders to different framebuffers and not to the default one connected to your computer screen. It seems you need the following approach so the default canvas is updated and thus usable for screenshots:
When presenting, WebGL renders to different framebuffers and not to the default one connected to your computer screen. It seems you need the following approach so the default canvas is updated and thus usable for screenshots: