Browse Source

Respond to mrdoob's comments.

Boris Smus 9 years ago
parent
commit
85c4922221
1 changed files with 13 additions and 20 deletions
  1. 13 20
      examples/js/effects/VREffect.js

+ 13 - 20
examples/js/effects/VREffect.js

@@ -12,8 +12,8 @@
 THREE.VREffect = function ( renderer, onError ) {
 
 	var vrHMD;
-	var eyeTranslationL, eyeFOVL, rectL;
-	var eyeTranslationR, eyeFOVR, rectR;
+	var eyeTranslationL, eyeFOVL, renderRectL;
+	var eyeTranslationR, eyeFOVR, renderRectR;
 
 	function gotVRDevices( devices ) {
 
@@ -102,8 +102,8 @@ THREE.VREffect = function ( renderer, onError ) {
 			eyeTranslationR = eyeParamsR.eyeTranslation;
 			eyeFOVL = eyeParamsL.recommendedFieldOfView;
 			eyeFOVR = eyeParamsR.recommendedFieldOfView;
-			rectL = eyeParamsL.renderRect;
-			rectR = eyeParamsR.renderRect;
+			renderRectL = eyeParamsL.renderRect;
+			renderRectR = eyeParamsR.renderRect;
 
 			if ( Array.isArray( scene ) ) {
 
@@ -129,31 +129,24 @@ THREE.VREffect = function ( renderer, onError ) {
 			cameraR.translateX( eyeTranslationR.x * this.scale );
 
 			// render left eye
-			if ( rectL ) {
+			if ( renderRectL === undefined ) {
 
-				renderer.setViewport( rectL.x, rectL.y, rectL.width, rectL.height );
-				renderer.setScissor( rectL.x, rectL.y, rectL.width, rectL.height );
-
-			} else {
-
-				renderer.setViewport( 0, 0, size.width / 2, size.height );
-				renderer.setScissor( 0, 0, size.width / 2, size.height );
+				renderRectL = { x: 0, y: 0, width: size.width / 2, height: size.height };
 
 			}
+			renderer.setViewport( renderRectL.x, renderRectL.y, renderRectL.width, renderRectL.height );
+			renderer.setScissor( renderRectL.x, renderRectL.y, renderRectL.width, renderRectL.height );
 			renderer.render( scene, cameraL );
 
 			// render right eye
-			if ( rectR ) {
-
-				renderer.setViewport( rectR.x, rectR.y, rectR.width, rectR.height );
-				renderer.setScissor( rectR.x, rectR.y, rectR.width, rectR.height );
+			if ( renderRectR === undefined ) {
 
-			} else {
-
-				renderer.setViewport( size.width / 2, 0, size.width / 2, size.height );
-				renderer.setScissor( size.width / 2, 0, size.width / 2, size.height );
+				renderRectR = { x: size.width / 2, y: 0, width: size.width / 2, height: size.height };
 
 			}
+
+			renderer.setViewport( renderRectR.x, renderRectR.y, renderRectR.width, renderRectR.height );
+			renderer.setScissor( renderRectR.x, renderRectR.y, renderRectR.width, renderRectR.height );
 			renderer.render( scene, cameraR );
 
 			renderer.setScissorTest( false );