From 6beea8cb732ae2d54fef2dd8249f8e3a7f0b19f0 Mon Sep 17 00:00:00 2001 From: Charlotte Gore Date: Wed, 20 Aug 2014 23:23:59 +0100 Subject: [PATCH] Fixed deferred renderer for retina displays Patched WebGLDeferredRenderer to work with native rather than virtual pixels. --- examples/js/renderers/WebGLDeferredRenderer.js | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/examples/js/renderers/WebGLDeferredRenderer.js b/examples/js/renderers/WebGLDeferredRenderer.js index 407de993e7..e6e54a050c 100644 --- a/examples/js/renderers/WebGLDeferredRenderer.js +++ b/examples/js/renderers/WebGLDeferredRenderer.js @@ -7,13 +7,22 @@ THREE.WebGLDeferredRenderer = function ( parameters ) { var _this = this; - var fullWidth = parameters.width !== undefined ? parameters.width : 800; - var fullHeight = parameters.height !== undefined ? parameters.height : 600; + var pixelWidth = parameters.width !== undefined ? parameters.width : 800; + var pixelHeight = parameters.height !== undefined ? parameters.height : 600; var currentScale = parameters.scale !== undefined ? parameters.scale : 1; - + + var devicePixelRatio = parameters.devicePixelRatio !== undefined + ? parameters.devicePixelRatio + : self.devicePixelRatio !== undefined + ? self.devicePixelRatio + : 1; + + var fullWidth = pixelWidth * devicePixelRatio; + var fullHeight = pixelHeight * devicePixelRatio; + var scaledWidth = Math.floor( currentScale * fullWidth ); var scaledHeight = Math.floor( currentScale * fullHeight ); - + var brightness = parameters.brightness !== undefined ? parameters.brightness : 1; var tonemapping = parameters.tonemapping !== undefined ? parameters.tonemapping : THREE.SimpleOperator; var antialias = parameters.antialias !== undefined ? parameters.antialias : false; -- GitLab