Skip to content

Commit 28989b9

Browse files
committed
making sure that backing textures are reset when surface is resized
1 parent 805f391 commit 28989b9

2 files changed

Lines changed: 4 additions & 10 deletions

File tree

core/src/processing/opengl/PGraphicsOpenGL.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -508,9 +508,6 @@ public class PGraphicsOpenGL extends PGraphics {
508508
"Stroke path is too long, some bevel triangles won't be added";
509509
static final String TESSELLATION_ERROR =
510510
"Tessellation Error: %1$s";
511-
static final String TEXTURE_SIZE_ERROR =
512-
"The backing texture for the primary surface has a width/height different " +
513-
"from the one given in size().";
514511

515512
//////////////////////////////////////////////////////////////
516513

@@ -6260,10 +6257,6 @@ protected void beginOnscreenDraw() {
62606257
if (pgl.isFBOBacked()) {
62616258
texture = pgl.wrapBackTexture(texture);
62626259
ptexture = pgl.wrapFrontTexture(ptexture);
6263-
6264-
if (texture.glWidth != width || texture.glHeight != height) {
6265-
PGraphics.showWarning(TEXTURE_SIZE_ERROR);
6266-
}
62676260
}
62686261
}
62696262

@@ -6428,7 +6421,7 @@ protected void setDrawDefaults() {
64286421
pgl.disable(PGL.POLYGON_SMOOTH);
64296422

64306423
if (sized) {
6431-
//reapplySettings();
6424+
// reapplySettings();
64326425

64336426
// To avoid having garbage in the screen after a resize,
64346427
// in the case background is not called in draw().

core/src/processing/opengl/PJOGL.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ public class PJOGL extends PGL {
113113
WINDOW_TOOLKIT = AWT;
114114
EVENTS_TOOLKIT = AWT;
115115
USE_FBOLAYER_BY_DEFAULT = true;
116-
USE_JOGL_FBOLAYER = true;
116+
USE_JOGL_FBOLAYER = false;
117117
} else if (PApplet.platform == PConstants.LINUX) {
118118
WINDOW_TOOLKIT = AWT;
119119
EVENTS_TOOLKIT = AWT;
@@ -820,14 +820,15 @@ public void display(GLAutoDrawable glDrawable) {
820820
frontTexAttach = (FBObject.TextureAttachment)frontFBO.
821821
getColorbuffer(0);
822822
} else {
823+
changedFrontTex = changedBackTex = sinkFBO == null;
824+
823825
// Default setting (to save resources): the front and back
824826
// textures are the same.
825827
sinkFBO = backFBO.getSamplingSinkFBO();
826828
backTexAttach = (FBObject.TextureAttachment) sinkFBO.
827829
getColorbuffer(0);
828830
frontTexAttach = backTexAttach;
829831
}
830-
831832
} else {
832833
// w/out multisampling, rendering is done on the back buffer.
833834
frontFBO = fboDrawable.getFBObject(GL.GL_FRONT);

0 commit comments

Comments
 (0)