Kaynağa Gözat

Examples: Clean up

Mugen87 7 yıl önce
ebeveyn
işleme
bab36f374e
1 değiştirilmiş dosya ile 27 ekleme ve 23 silme
  1. 27 23
      examples/webgl_postprocessing_sao.html

+ 27 - 23
examples/webgl_postprocessing_sao.html

@@ -1,5 +1,4 @@
 <!DOCTYPE html>
-
 <html lang="en">
 	<head>
 		<title>three.js webgl - post processing - Scalable Ambient Occlusion (SAO)</title>
@@ -35,15 +34,15 @@
 	<body>
 		<script src="../build/three.js"></script>
 
-        <script src="js/postprocessing/EffectComposer.js"></script>
+    <script src="js/postprocessing/EffectComposer.js"></script>
 		<script src="js/postprocessing/RenderPass.js"></script>
 		<script src="js/postprocessing/ShaderPass.js"></script>
 		<script src="js/postprocessing/SAOPass.js"></script>
 
 		<script src="js/shaders/CopyShader.js"></script>
 		<script src="js/shaders/SAOShader.js"></script>
-        <script src="js/shaders/DepthLimitedBlurShader.js"></script>
-        <script src="js/shaders/UnpackDepthRGBAShader.js"></script>
+    <script src="js/shaders/DepthLimitedBlurShader.js"></script>
+    <script src="js/shaders/UnpackDepthRGBAShader.js"></script>
 
 		<script src="js/Detector.js"></script>
 		<script src="js/libs/stats.min.js"></script>
@@ -126,6 +125,7 @@
 				scene.add( light3 );
 
 				var geometry = new THREE.SphereBufferGeometry( 3, 48, 24 );
+
 				for ( var i = 0; i < 120; i ++ ) {
 
 					var material = new THREE.MeshStandardMaterial();
@@ -143,38 +143,40 @@
 
 					mesh.scale.x = mesh.scale.y = mesh.scale.z = Math.random() * 0.2 + 0.05;
 					group.add( mesh );
+
 				}
 
 				stats = new Stats();
 				container.appendChild( stats.dom );
 
-				composer = new THREE.EffectComposer(renderer);
-				renderPass = new THREE.RenderPass(scene, camera);
-				composer.addPass(renderPass);
-				saoPass = new THREE.SAOPass(scene, camera, false, true);
+				composer = new THREE.EffectComposer( renderer );
+				renderPass = new THREE.RenderPass( scene, camera );
+				composer.addPass( renderPass );
+				saoPass = new THREE.SAOPass( scene, camera, false, true );
 				saoPass.renderToScreen = true;
-				composer.addPass(saoPass);
+				composer.addPass( saoPass );
 
 				// Init gui
 				var gui = new dat.GUI();
-				gui.add( saoPass.params, "output", {
+				gui.add( saoPass.params, 'output', {
 					'Beauty': THREE.SAOPass.OUTPUT.Beauty,
 					'Beauty+SAO': THREE.SAOPass.OUTPUT.Default,
 					'SAO': THREE.SAOPass.OUTPUT.SAO,
 					'Depth': THREE.SAOPass.OUTPUT.Depth,
 					'Normal': THREE.SAOPass.OUTPUT.Normal
-				});
-				gui.add( saoPass.params, "saoBias", -1, 1 );
-				gui.add( saoPass.params, "saoIntensity", 0, 1 );
-				gui.add( saoPass.params, "saoScale", 0, 10 );
-				gui.add( saoPass.params, "saoKernelRadius", 1, 100 );
-				gui.add( saoPass.params, "saoMinResolution", 0, 1 );
-				gui.add( saoPass.params, "saoBlur" );
-				gui.add( saoPass.params, "saoBlurRadius", 0, 200 );
-				gui.add( saoPass.params, "saoBlurStdDev", 0.5, 150 );
-				gui.add( saoPass.params, "saoBlurDepthCutoff", 0.0, 0.1 );
+				} ).onChange( function ( value ) { saoPass.params.output = parseInt( value ); } );
+				gui.add( saoPass.params, 'saoBias', - 1, 1 );
+				gui.add( saoPass.params, 'saoIntensity', 0, 1 );
+				gui.add( saoPass.params, 'saoScale', 0, 10 );
+				gui.add( saoPass.params, 'saoKernelRadius', 1, 100 );
+				gui.add( saoPass.params, 'saoMinResolution', 0, 1 );
+				gui.add( saoPass.params, 'saoBlur' );
+				gui.add( saoPass.params, 'saoBlurRadius', 0, 200 );
+				gui.add( saoPass.params, 'saoBlurStdDev', 0.5, 150 );
+				gui.add( saoPass.params, 'saoBlurDepthCutoff', 0.0, 0.1 );
 
 				window.addEventListener( 'resize', onWindowResize, false );
+
 			}
 
 			function onWindowResize() {
@@ -187,27 +189,29 @@
 				camera.updateProjectionMatrix();
 				renderer.setSize( width, height );
 
-                composer.setSize( width, height );
+        composer.setSize( width, height );
 
 
 			}
 
 			function animate() {
+
 				requestAnimationFrame( animate );
 
 				stats.begin();
 				render();
 				stats.end();
-			}
 
-			var prevStdDev, prevNumSamples;
+			}
 
 			function render() {
+
 				var timer = performance.now();
 				group.rotation.x = timer * 0.0002;
 				group.rotation.y = timer * 0.0001;
 
 				composer.render();
+
 			}
 
 		</script>