From 5999bfc14c39faa22c412cb4c8b40eb72b3c7f45 Mon Sep 17 00:00:00 2001 From: Jakub Valtar Date: Wed, 28 Jan 2015 17:14:13 +0100 Subject: [PATCH 1/2] Save now creates opaque images from primary surface Fixes #3031 --- .../processing/opengl/PGraphicsOpenGL.java | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/core/src/processing/opengl/PGraphicsOpenGL.java b/core/src/processing/opengl/PGraphicsOpenGL.java index 5c1985cf2..d87730ad2 100644 --- a/core/src/processing/opengl/PGraphicsOpenGL.java +++ b/core/src/processing/opengl/PGraphicsOpenGL.java @@ -5629,6 +5629,29 @@ public class PGraphicsOpenGL extends PGraphics { } + ////////////////////////////////////////////////////////////// + + // SAVE + + + @Override + public boolean save(String filename) { + + // Act as opaque surface for the purposes of saving. + // This is a hack, primary surface is supposed to be + // opaque by default. + if (primarySurface) { + int prevFormat = format; + format = RGB; + boolean result = super.save(filename); + format = prevFormat; + return result; + } + + return super.save(filename); + } + + ////////////////////////////////////////////////////////////// // LOAD/UPDATE TEXTURE From d0d88066ef945563e2ff41935e4a03a3df176032 Mon Sep 17 00:00:00 2001 From: Jakub Valtar Date: Wed, 28 Jan 2015 17:24:56 +0100 Subject: [PATCH 2/2] Change comment --- core/src/processing/opengl/PGraphicsOpenGL.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/core/src/processing/opengl/PGraphicsOpenGL.java b/core/src/processing/opengl/PGraphicsOpenGL.java index d87730ad2..e2a7fafc7 100644 --- a/core/src/processing/opengl/PGraphicsOpenGL.java +++ b/core/src/processing/opengl/PGraphicsOpenGL.java @@ -5637,9 +5637,7 @@ public class PGraphicsOpenGL extends PGraphics { @Override public boolean save(String filename) { - // Act as opaque surface for the purposes of saving. - // This is a hack, primary surface is supposed to be - // opaque by default. + // Act as an opaque surface for the purposes of saving. if (primarySurface) { int prevFormat = format; format = RGB;