<commit_before><!DOCTYPE html>
<html lang="en">
	<head>
		<title>three.js webgl - postprocessing</title>
		<meta charset="utf-8">
		<style>
			body {
				margin: 0px;
				background-color: #000;
				overflow: hidden;
				font-family:Monospace;
				font-size:13px;
				margin: 0px;
				text-align:center;
				overflow: hidden;
			}
			
			#info {
				color: #fff;
				position: absolute;
				top: 10px;
				width: 100%;
				text-align: center;
				display:block;
			}
		</style>
	</head>
	<body>
		<div id="info">
			<a href="http://threejs.org" target="_blank">three.js</a> - Node-Based Post-Processing
		</div>
	
		<script src="../build/three.min.js"></script>
		<script src="js/libs/dat.gui.min.js"></script>

		<script src="js/shaders/CopyShader.js"></script>

		<script src="js/postprocessing/EffectComposer.js"></script>
		<script src="js/postprocessing/RenderPass.js"></script>
		<script src="js/postprocessing/MaskPass.js"></script>
		<script src="js/postprocessing/ShaderPass.js"></script>

		<!-- NodeLibrary -->
		<script src="js/shaders/nodes/GLNode.js"></script>
		<script src="js/shaders/nodes/RawNode.js"></script>
		<script src="js/shaders/nodes/TempNode.js"></script>
		<script src="js/shaders/nodes/InputNode.js"></script>
		<script src="js/shaders/nodes/ConstNode.js"></script>
		<script src="js/shaders/nodes/FunctionNode.js"></script>
		<script src="js/shaders/nodes/FunctionCallNode.js"></script>
		<script src="js/shaders/nodes/BuilderNode.js"></script>
		<script src="js/shaders/nodes/LibNode.js"></script>
		<script src="js/shaders/nodes/NodeMaterial.js"></script>

		<!-- Accessors -->
		<script src="js/shaders/nodes/accessors/PositionNode.js"></script>
		<script src="js/shaders/nodes/accessors/NormalNode.js"></script>
		<script src="js/shaders/nodes/accessors/UVNode.js"></script>
		<script src="js/shaders/nodes/accessors/ColorsNode.js"></script>

		<!-- Inputs -->
		<script src="js/shaders/nodes/inputs/IntNode.js"></script>
		<script src="js/shaders/nodes/inputs/FloatNode.js"></script>
		<script src="js/shaders/nodes/inputs/ColorNode.js"></script>
		<script src="js/shaders/nodes/inputs/Vector2Node.js"></script>
		<script src="js/shaders/nodes/inputs/Vector3Node.js"></script>
		<script src="js/shaders/nodes/inputs/Vector4Node.js"></script>
		<script src="js/shaders/nodes/inputs/TextureNode.js"></script>
		<script src="js/shaders/nodes/inputs/CubeTextureNode.js"></script>
		<script src="js/shaders/nodes/inputs/ScreenNode.js"></script>

		<!-- Math -->
		<script src="js/shaders/nodes/math/Math1Node.js"></script>
		<script src="js/shaders/nodes/math/Math2Node.js"></script>
		<script src="js/shaders/nodes/math/Math3Node.js"></script>
		<script src="js/shaders/nodes/math/OperatorNode.js"></script>

		<!-- Utils -->
		<script src="js/shaders/nodes/utils/SwitchNode.js"></script>
		<script src="js/shaders/nodes/utils/JoinNode.js"></script>
		<script src="js/shaders/nodes/utils/TimeNode.js"></script>
		<script src="js/shaders/nodes/utils/NormalMapNode.js"></script>

		<!-- Post-Processing -->
		<script src="js/shaders/nodes/postprocessing/NodePass.js"></script>

		<script>

			var camera, scene, renderer, composer;
			var object, light, nodepass;
			var gui, guiElements = [];

			var param = { example: 'brightness' };

			var lensflare2 = new THREE.TextureLoader().load( 'textures/lensflare2.jpg' );
			lensflare2.wrapS = lensflare2.wrapT = THREE.RepeatWrapping;

			var decalNormal = new THREE.TextureLoader().load( 'textures/decal/decal-normal.jpg' );
			decalNormal.wrapS = decalNormal.wrapT = THREE.RepeatWrapping;

			init();
			animate();

			function clearGui() {

				if ( gui ) gui.destroy();

				gui = new dat.GUI();

				var example = gui.add( param, 'example', {
					'basic / Brightness': 'brightness',
					'basic / Blends': 'blends',
					'basic / Fade': 'fade',
					'basic / Invert': 'invert',
					'adv / Saturation': 'saturation',
					'adv / Mosaic': 'mosaic',
				} ).onFinishChange( function() {

					updateMaterial();

				} );

				gui.open();

			}

			function addGui( name, value, callback, isColor, min, max ) {

				var node;

				param[ name ] = value;

				if ( isColor ) {

					node = gui.addColor( param, name ).onChange( function() {

						callback( param[ name ] );<commit_msg>refraction example<commit_after><!DOCTYPE html>
<html lang="en">
	<head>
		<title>three.js webgl - postprocessing</title>
		<meta charset="utf-8">
		<style>
			body {
				margin: 0px;
				background-color: #000;
				overflow: hidden;
				font-family:Monospace;
				font-size:13px;
				margin: 0px;
				text-align:center;
				overflow: hidden;
			}
			
			#info {
				color: #fff;
				position: absolute;
				top: 10px;
				width: 100%;
				text-align: center;
				display:block;
			}
		</style>
	</head>
	<body>
		<div id="info">
			<a href="http://threejs.org" target="_blank">three.js</a> - Node-Based Post-Processing
		</div>
	
		<script src="../build/three.min.js"></script>
		<script src="js/libs/dat.gui.min.js"></script>

		<script src="js/shaders/CopyShader.js"></script>

		<script src="js/postprocessing/EffectComposer.js"></script>
		<script src="js/postprocessing/RenderPass.js"></script>
		<script src="js/postprocessing/MaskPass.js"></script>
		<script src="js/postprocessing/ShaderPass.js"></script>

		<!-- NodeLibrary -->
		<script src="js/shaders/nodes/GLNode.js"></script>
		<script src="js/shaders/nodes/RawNode.js"></script>
		<script src="js/shaders/nodes/TempNode.js"></script>
		<script src="js/shaders/nodes/InputNode.js"></script>
		<script src="js/shaders/nodes/ConstNode.js"></script>
		<script src="js/shaders/nodes/FunctionNode.js"></script>
		<script src="js/shaders/nodes/FunctionCallNode.js"></script>
		<script src="js/shaders/nodes/BuilderNode.js"></script>
		<script src="js/shaders/nodes/LibNode.js"></script>
		<script src="js/shaders/nodes/NodeMaterial.js"></script>

		<!-- Accessors -->
		<script src="js/shaders/nodes/accessors/PositionNode.js"></script>
		<script src="js/shaders/nodes/accessors/NormalNode.js"></script>
		<script src="js/shaders/nodes/accessors/UVNode.js"></script>
		<script src="js/shaders/nodes/accessors/ColorsNode.js"></script>

		<!-- Inputs -->
		<script src="js/shaders/nodes/inputs/IntNode.js"></script>
		<script src="js/shaders/nodes/inputs/FloatNode.js"></script>
		<script src="js/shaders/nodes/inputs/ColorNode.js"></script>
		<script src="js/shaders/nodes/inputs/Vector2Node.js"></script>
		<script src="js/shaders/nodes/inputs/Vector3Node.js"></script>
		<script src="js/shaders/nodes/inputs/Vector4Node.js"></script>
		<script src="js/shaders/nodes/inputs/TextureNode.js"></script>
		<script src="js/shaders/nodes/inputs/CubeTextureNode.js"></script>
		<script src="js/shaders/nodes/inputs/ScreenNode.js"></script>

		<!-- Math -->
		<script src="js/shaders/nodes/math/Math1Node.js"></script>
		<script src="js/shaders/nodes/math/Math2Node.js"></script>
		<script src="js/shaders/nodes/math/Math3Node.js"></script>
		<script src="js/shaders/nodes/math/OperatorNode.js"></script>

		<!-- Utils -->
		<script src="js/shaders/nodes/utils/SwitchNode.js"></script>
		<script src="js/shaders/nodes/utils/JoinNode.js"></script>
		<script src="js/shaders/nodes/utils/TimeNode.js"></script>
		<script src="js/shaders/nodes/utils/NormalMapNode.js"></script>

		<!-- Post-Processing -->
		<script src="js/shaders/nodes/postprocessing/NodePass.js"></script>

		<script>

			var camera, scene, renderer, composer;
			var object, light, nodepass;
			var gui, guiElements = [];

			var param = { example: 'brightness' };

			var lensflare2 = new THREE.TextureLoader().load( 'textures/lensflare2.jpg' );
			lensflare2.wrapS = lensflare2.wrapT = THREE.RepeatWrapping;

			var decalNormal = new THREE.TextureLoader().load( 'textures/decal/decal-normal.jpg' );
			decalNormal.wrapS = decalNormal.wrapT = THREE.RepeatWrapping;

			init();
			animate();

			function clearGui() {

				if ( gui ) gui.destroy();

				gui = new dat.GUI();

				var example = gui.add( param, 'example', {
					'basic / Brightness': 'brightness',
					'basic / Blends': 'blends',
					'basic / Fade': 'fade',
					'basic / Invert': 'invert',
					'adv / Saturation': 'saturation',
					'adv / Refraction': 'refraction',
					'adv / Mosaic': 'mosaic',
				} ).onFinishChange( function() {

					updateMaterial();

				} );

				gui.open();

			}

			function addGui( name, value, callback, isColor, min, max ) {

				var node;

				param[ name ] = value;

				if ( isColor ) {

					node = gui.addColor( param, name ).onChange( function() {

						callback( param[ name ] );
{'fraction_non_alphanumeric': 0.19045952880802425, 'fraction_numerical': 0.00536505714952181, 'mean_word_length': 3.701206140350877, 'pattern_counts': {'":': 0, '<': 201, '<?xml version=': 0, '>': 201, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1676263', 'n_tokens_mistral': 3473, 'n_tokens_neox': 2962, 'n_words': 456}