2
0
rNix 9 жил өмнө
parent
commit
c6ebcf5ce6

+ 0 - 225
examples/webgl_stereo_pano.html

@@ -1,225 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<title>three.js webgl - stereo pano demo</title>
-		<meta charset="utf-8">
-		<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
-		<meta name="viewmode" content="projection=stereo">
-		<style>
-			html, body {
-				background-color: #000;
-				margin: 0;
-				padding: 0;
-				overflow: hidden;
-			}
-
-			#vrMode {
-				position: absolute;
-				top: 0;
-				left: 0;
-				margin: 10px;
-				padding: 10px;
-				border: 0;
-				background: #000;
-				color: #fff;
-				font-size: 1rem;
-			}
-
-		</style>
-
-		<script>
-		WebVRConfig = {
-			// Forces availability of VR mode.
-			FORCE_ENABLE_VR: true, // Default: false.
-			// Complementary filter coefficient. 0 for accelerometer, 1 for gyro.
-			//K_FILTER: 0.98, // Default: 0.98.
-			// How far into the future to predict during fast motion.
-			//PREDICTION_TIME_S: 0, // Default: 0.050s.
-			// Flag to disable touch panner. In case you have your own touch controls
-			//TOUCH_PANNER_DISABLED: true, // Default: false.
-			// Enable yaw panning only, disabling roll and pitch. This can be useful
-			// for panoramas with nothing interesting above or below.
-			//YAW_ONLY: true, // Default: false.
-			// To disable keyboard and mouse controls. If you implement your own.
-			//MOUSE_KEYBOARD_CONTROLS_DISABLED: true // Default: false
-		}
-		</script>
-	</head>
-	<body>
-		<button id="vrMode">VR MODE</button>
-		<script src="../build/three.min.js"></script>
-		<script src="js/libs/webvr-polyfill.js"></script>
-		<script src="js/controls/VRControls.js"></script>
-		<script src="js/effects/VREffect.js"></script>
-
-		<script>
-
-		var camera;
-		var vrControls;
-		var effect;
-		var renderer;
-		var scene;
-		var vrMode = false;
-
-		function init() {
-
-			renderer = new THREE.WebGLRenderer( { antialias: true } );
-			renderer.setPixelRatio( window.devicePixelRatio ? window.devicePixelRatio : 1 );
-			document.body.appendChild( renderer.domElement );
-
-			scene = new THREE.Scene();
-
-			camera = new THREE.PerspectiveCamera( 90, window.innerWidth / window.innerHeight, 1, 10000 );
-			camera.layers.enable(1);
-
-			effect = new THREE.VREffect( renderer );
-			vrControls = new THREE.VRControls( camera );
-
-			var textures = getTexturesFromAtlasFile( "textures/cube/sun_temple_stripe_stereo.jpg", 12 );
-
-
-			var materials = [];
-
-			for ( var i = 0; i < 6; i ++ ) {
-
-				materials.push( new THREE.MeshBasicMaterial( { map: textures[i] } ) );
-
-			}
-
-			var skyBox = new THREE.Mesh( new THREE.CubeGeometry( 1024, 1024, 1024 ), new THREE.MeshFaceMaterial( materials ) );
-			skyBox.applyMatrix( new THREE.Matrix4().makeScale( 1, 1, -1 ) );
-			skyBox.layers.set( 1 );
-			scene.add( skyBox );
-
-
-			var materialsR = [];
-
-			for ( var i = 6; i < 12; i ++ ) {
-
-				materialsR.push( new THREE.MeshBasicMaterial( { map: textures[i] } ) );
-
-			}
-
-			var skyBoxR = new THREE.Mesh( new THREE.CubeGeometry( 1024, 1024, 1024 ), new THREE.MeshFaceMaterial( materialsR ) );
-			skyBoxR.applyMatrix( new THREE.Matrix4().makeScale( 1, 1, -1 ) );
-			skyBoxR.layers.set( 2 );
-			scene.add( skyBoxR );
-
-			animate();
-			onWindowResize();
-
-		}
-
-		function getTexturesFromAtlasFile( atlasImgUrl, tilesNum ) {
-
-			var textures = [];
-
-			for ( var i=0; i < tilesNum; i++ ) {
-
-				textures[i] = new THREE.Texture();
-
-			}
-
-			var imageObj = new Image();
-
-			imageObj.onload = function() {
-
-				var canvas, context;
-				var tileWidth = imageObj.height;
-
-				for ( var i = 0; i < textures.length; i++ ) {
-
-					canvas = document.createElement( 'canvas' );
-					context = canvas.getContext( '2d' );
-					canvas.height = tileWidth;
-					canvas.width = tileWidth;
-					context.drawImage( imageObj, tileWidth * i, 0, tileWidth, tileWidth, 0, 0, tileWidth, tileWidth );
-					textures[i].image = canvas
-					textures[i].needsUpdate = true;
-
-				}
-
-			};
-
-			imageObj.src = atlasImgUrl;
-
-			return textures;
-
-		}
-
-		function requestFullscreen() {
-
-			effect.setFullScreen( true );
-
-		}
-
-		function onWindowResize() {
-
-			camera.aspect = window.innerWidth / window.innerHeight;
-			camera.updateProjectionMatrix();
-
-			if (vrMode) {
-
-				effect.setSize(window.innerWidth, window.innerHeight);
-
-			} else {
-
-				renderer.setSize(window.innerWidth, window.innerHeight);
-				
-			}
-
-		}
-
-		function onFullscreenChange(e) {
-
-			var fsElement = document.fullscreenElement ||
-				document.mozFullScreenElement ||
-				document.webkitFullscreenElement;
-
-			if ( !fsElement ) {
-
-				vrMode = false;
-
-			} else {
-
-				window.screen.orientation.lock( 'landscape' );
-
-			}
-
-		}
-
-		function animate() {
-
-			if ( vrMode ) {
-
-				effect.render( scene, camera );
-
-			} else {
-
-				renderer.setViewport( 0, 0, window.innerWidth, window.innerHeight );
-				renderer.render( scene, camera );
-
-			}
-
-			vrControls.update();
-			requestAnimationFrame( animate );
-
-		}
-
-		document.querySelector( '#vrMode' ).addEventListener( 'click', function() {
-
-			vrMode = vrMode ? false : true;
-			requestFullscreen();
-			onWindowResize();
-
-		} );
-
-		document.addEventListener( 'fullscreenchange', onFullscreenChange );
-		document.addEventListener( 'mozfullscreenchange', onFullscreenChange );
-		window.addEventListener( 'resize', onWindowResize, false );
-
-		init();
-
-		</script>
-	</body>
-</html>