Pārlūkot izejas kodu

Merge pull request #14115 from joshpatt2/scalingfactor

Add scaling factor for webvr renderers
Mr.doob 6 gadi atpakaļ
vecāks
revīzija
e7dcca743d

+ 3 - 2
src/renderers/webvr/WebVRManager.js

@@ -65,8 +65,8 @@ function WebVRManager( renderer ) {
 		if ( isPresenting() ) {
 
 			var eyeParameters = device.getEyeParameters( 'left' );
-			var renderWidth = eyeParameters.renderWidth;
-			var renderHeight = eyeParameters.renderHeight;
+			var renderWidth = eyeParameters.renderWidth * scope.framebufferScaleFactor;
+			var renderHeight = eyeParameters.renderHeight * scope.framebufferScaleFactor;
 
 			currentPixelRatio = renderer.getPixelRatio();
 			currentSize = renderer.getSize();
@@ -194,6 +194,7 @@ function WebVRManager( renderer ) {
 		return controller;
 
 	};
+	this.framebufferScaleFactor = 1.0;
 
 	this.getDevice = function () {
 

+ 2 - 1
src/renderers/webvr/WebXRManager.js

@@ -47,6 +47,7 @@ function WebXRManager( renderer ) {
 	//
 
 	this.enabled = false;
+	this.framebufferScaleFactor = 1.0;
 
 	this.getController = function ( id ) {
 
@@ -112,7 +113,7 @@ function WebXRManager( renderer ) {
 			session.addEventListener( 'selectend', onSessionEvent );
 			session.addEventListener( 'end', onSessionEnd );
 
-			session.baseLayer = new XRWebGLLayer( session, gl );
+			session.baseLayer = new XRWebGLLayer( session, gl, { framebufferScaleFactor: this.framebufferScaleFactor } );
 			session.requestFrameOfReference( frameOfReferenceType ).then( function ( value ) {
 
 				frameOfReference = value;