Bläddra i källkod

CanvasRenderer/WebGLRenderer: Support for cases were setSize() is not called. See #2835.

Mr.doob 12 år sedan
förälder
incheckning
030be9487f
2 ändrade filer med 9 tillägg och 3 borttagningar
  1. 5 1
      src/renderers/CanvasRenderer.js
  2. 4 2
      src/renderers/WebGLRenderer.js

+ 5 - 1
src/renderers/CanvasRenderer.js

@@ -18,7 +18,11 @@ THREE.CanvasRenderer = function ( parameters ) {
 			? parameters.canvas
 			? parameters.canvas
 			: document.createElement( 'canvas' ),
 			: document.createElement( 'canvas' ),
 
 
-	_canvasWidth, _canvasHeight, _canvasWidthHalf, _canvasHeightHalf,
+	_canvasWidth = _canvas.width,
+	_canvasHeight = _canvas.height,
+	_canvasWidthHalf = Math.floor( _canvasWidth / 2 ),
+	_canvasHeightHalf = Math.floor( _canvasHeight / 2 ),
+	
 	_context = _canvas.getContext( '2d' ),
 	_context = _canvas.getContext( '2d' ),
 
 
 	_clearColor = new THREE.Color( 0x000000 ),
 	_clearColor = new THREE.Color( 0x000000 ),

+ 4 - 2
src/renderers/WebGLRenderer.js

@@ -138,8 +138,8 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 
 	_viewportX = 0,
 	_viewportX = 0,
 	_viewportY = 0,
 	_viewportY = 0,
-	_viewportWidth = 0,
-	_viewportHeight = 0,
+	_viewportWidth = _canvas.width,
+	_viewportHeight = _canvas.height,
 	_currentWidth = 0,
 	_currentWidth = 0,
 	_currentHeight = 0,
 	_currentHeight = 0,
 
 
@@ -6538,6 +6538,8 @@ THREE.WebGLRenderer = function ( parameters ) {
 		_gl.blendEquation( _gl.FUNC_ADD );
 		_gl.blendEquation( _gl.FUNC_ADD );
 		_gl.blendFunc( _gl.SRC_ALPHA, _gl.ONE_MINUS_SRC_ALPHA );
 		_gl.blendFunc( _gl.SRC_ALPHA, _gl.ONE_MINUS_SRC_ALPHA );
 
 
+		_gl.viewport( _viewportX, _viewportY, _viewportWidth, _viewportHeight );
+		
 		_gl.clearColor( _clearColor.r, _clearColor.g, _clearColor.b, _clearAlpha );
 		_gl.clearColor( _clearColor.r, _clearColor.g, _clearColor.b, _clearAlpha );
 
 
 	};
 	};