From 0b9cccfa680a833d0f5786440393fb29e80dc2a8 Mon Sep 17 00:00:00 2001 From: Haowei Wen Date: Wed, 9 Sep 2020 14:06:53 +0800 Subject: [PATCH] add 'preserveDrawingBuffer' option The default value of 'preserveDrawingBuffer' is changed back to false due to performance concern. To turn it on, you have to specify 'preserveDrawingBuffer: true' in SkinViewerOptions. Related: #65, #67 --- src/viewer.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/viewer.ts b/src/viewer.ts index 8e07a63..b86bcd4 100644 --- a/src/viewer.ts +++ b/src/viewer.ts @@ -27,6 +27,11 @@ export type SkinViewerOptions = { * A new canvas is created if this parameter is unspecified. */ canvas?: HTMLCanvasElement; + + /** + * Whether to preserve the buffers until manually cleared or overwritten. Default is false. + */ + preserveDrawingBuffer?: boolean; } function toMakeVisible(options?: LoadOptions): boolean { @@ -75,8 +80,9 @@ class SkinViewer { this.renderer = new WebGLRenderer({ canvas: this.canvas, - alpha: options.alpha !== false, // alpha is on by default - preserveDrawingBuffer: true + alpha: options.alpha !== false, // default: true + preserveDrawingBuffer: options.preserveDrawingBuffer === true // default: false + }); this.renderer.setPixelRatio(window.devicePixelRatio);