From 45b1948f7c7919292623d06f06873e2ba31ec504 Mon Sep 17 00:00:00 2001 From: schmelczerandras Date: Sat, 31 Oct 2020 16:02:55 +0100 Subject: [PATCH] Add fb invalidation --- .../frame-buffer/intermediate-frame-buffer.ts | 9 +++++++++ .../rendering/renderer/renderer-implementation.ts | 2 ++ 2 files changed, 11 insertions(+) diff --git a/src/graphics/graphics-library/frame-buffer/intermediate-frame-buffer.ts b/src/graphics/graphics-library/frame-buffer/intermediate-frame-buffer.ts index 0e4d483..a46cfbe 100644 --- a/src/graphics/graphics-library/frame-buffer/intermediate-frame-buffer.ts +++ b/src/graphics/graphics-library/frame-buffer/intermediate-frame-buffer.ts @@ -39,6 +39,15 @@ export class IntermediateFrameBuffer extends FrameBuffer { : [this.colorTexture]; } + public invalidate() { + if (this.gl.isWebGL2) { + this.gl.invalidateFramebuffer(this.gl.FRAMEBUFFER, [ + this.gl.COLOR_ATTACHMENT0, + this.gl.COLOR_ATTACHMENT1, + ]); + } + } + public setSize(canvasSize: ReadonlyVec2): boolean { const hasChanged = super.setSize(canvasSize); diff --git a/src/graphics/rendering/renderer/renderer-implementation.ts b/src/graphics/rendering/renderer/renderer-implementation.ts index db662a1..8b67ebe 100644 --- a/src/graphics/rendering/renderer/renderer-implementation.ts +++ b/src/graphics/rendering/renderer/renderer-implementation.ts @@ -258,6 +258,8 @@ export class RendererImplementation implements Renderer { ); this.gl.disable(this.gl.BLEND); + this.distanceFieldFrameBuffer.invalidate(); + if (this.stopwatch?.isRunning) { this.stopwatch?.stop(); }