Bläddra i källkod

Examples: Converted ARButton and VRButton to classes.

Mr.doob 4 år sedan
förälder
incheckning
853f44510b
2 ändrade filer med 15 tillägg och 19 borttagningar
  1. 7 12
      examples/jsm/webxr/ARButton.js
  2. 8 7
      examples/jsm/webxr/VRButton.js

+ 7 - 12
examples/jsm/webxr/ARButton.js

@@ -1,21 +1,17 @@
-var ARButton = {
+class ARButton {
 
-	createButton: function ( renderer, sessionInit = {} ) {
+	static createButton( renderer, sessionInit = {} ) {
+
+		const button = document.createElement( 'button' );
 
 		function showStartAR( /*device*/ ) {
 
-			var currentSession = null;
+			let currentSession = null;
 
 			function onSessionStarted( session ) {
 
 				session.addEventListener( 'end', onSessionEnded );
 
-				/*
-				session.updateWorldTrackingState( {
-					'planeDetectionState': { 'enabled': true }
-				} );
-				*/
-
 				renderer.xr.setReferenceSpaceType( 'local' );
 				renderer.xr.setSession( session );
 				button.textContent = 'STOP AR';
@@ -114,7 +110,6 @@ var ARButton = {
 
 		if ( 'xr' in navigator ) {
 
-			var button = document.createElement( 'button' );
 			button.id = 'ARButton';
 			button.style.display = 'none';
 
@@ -130,7 +125,7 @@ var ARButton = {
 
 		} else {
 
-			var message = document.createElement( 'a' );
+			const message = document.createElement( 'a' );
 
 			if ( window.isSecureContext === false ) {
 
@@ -156,6 +151,6 @@ var ARButton = {
 
 	}
 
-};
+}
 
 export { ARButton };

+ 8 - 7
examples/jsm/webxr/VRButton.js

@@ -1,6 +1,6 @@
-var VRButton = {
+class VRButton {
 
-	createButton: function ( renderer, options ) {
+	static createButton( renderer, options ) {
 
 		if ( options ) {
 
@@ -8,9 +8,11 @@ var VRButton = {
 
 		}
 
+		const button = document.createElement( 'button' );
+
 		function showEnterVR( /*device*/ ) {
 
-			var currentSession = null;
+			let currentSession = null;
 
 			function onSessionStarted( session ) {
 
@@ -66,7 +68,7 @@ var VRButton = {
 					// ('local' is always available for immersive sessions and doesn't need to
 					// be requested separately.)
 
-					var sessionInit = { optionalFeatures: [ 'local-floor', 'bounded-floor', 'hand-tracking' ] };
+					const sessionInit = { optionalFeatures: [ 'local-floor', 'bounded-floor', 'hand-tracking' ] };
 					navigator.xr.requestSession( 'immersive-vr', sessionInit ).then( onSessionStarted );
 
 				} else {
@@ -121,7 +123,6 @@ var VRButton = {
 
 		if ( 'xr' in navigator ) {
 
-			var button = document.createElement( 'button' );
 			button.id = 'VRButton';
 			button.style.display = 'none';
 
@@ -137,7 +138,7 @@ var VRButton = {
 
 		} else {
 
-			var message = document.createElement( 'a' );
+			const message = document.createElement( 'a' );
 
 			if ( window.isSecureContext === false ) {
 
@@ -163,6 +164,6 @@ var VRButton = {
 
 	}
 
-};
+}
 
 export { VRButton };