Here’s the code for sorting out the FBO (the gist of it anyway)
gameFBO.begin();
Gdx.gl.glEnable(GL11.GL_DEPTH_TEST);
Gdx.gl.glClearColor(1f, 1f, 1f, 1f);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT);
batch.draw(x);
batch.draw(y); // Maybe this is causing it (z fighting), but I've disabled all the draw calls except one and it's the same issue.
Gdx.gl.glDisable(GL11.GL_DEPTH_TEST);
gameFBO.end();
If this weird pattern looks familiar to someone, I’d appreciate the help!
An additional note: sometimes the white overlay is straight vertical lines separated by one pixel.
EDIT: Here’s the block for rendering the FBO
batch.begin();
batch.disableBlending();
batch.setColor(1, 1, 1, 1);
batch.setProjectionMatrix(camera.combined); // Orthographic, near = 0, far = 100
batch.draw(fboFlippedTexture, camera.position.x - fbo.getColorBufferTexture().getWidth() / 2, camera.position.y - fbo.getColorBufferTexture().getHeight() / 2, fbo.getColorBufferTexture().getWidth(), fbo.getColorBufferTexture().getHeight());
batch.flush();
batch.enableBlending();