2
0
Эх сурвалжийг харах

WebGLDeferredRenderer: simplified emissive pass.

Turns out extra texture fetch is more expensive than savings on discard.
alteredq 12 жил өмнө
parent
commit
985ea0b1e3

+ 1 - 7
examples/js/ShaderDeferred.js

@@ -565,8 +565,7 @@ THREE.ShaderDeferred = {
 
 		uniforms: {
 
-			samplerNormalDepth: 	{ type: "t", value: null },
-			samplerColor: 			{ type: "t", value: null },
+			samplerColor: 	{ type: "t", value: null },
 			viewWidth: 		{ type: "f", value: 800 },
 			viewHeight: 	{ type: "f", value: 600 },
 
@@ -574,7 +573,6 @@ THREE.ShaderDeferred = {
 
 		fragmentShader : [
 
-			"uniform sampler2D samplerNormalDepth;",
 			"uniform sampler2D samplerColor;",
 
 			"uniform float viewHeight;",
@@ -595,10 +593,6 @@ THREE.ShaderDeferred = {
 
 				"vec2 texCoord = gl_FragCoord.xy / vec2( viewWidth, viewHeight );",
 
-				"float z = texture2D( samplerNormalDepth, texCoord ).w;",
-
-				"if ( z == 0.0 ) discard;",
-
 				"vec4 colorMap = texture2D( samplerColor, texCoord );",
 				"vec3 emissiveColor = float_to_vec3( abs( colorMap.w ) );",
 

+ 0 - 1
examples/js/renderers/WebGLDeferredRenderer.js

@@ -329,7 +329,6 @@ THREE.WebGLDeferredRenderer = function ( parameters ) {
 		materialLight.uniforms[ "viewHeight" ].value = scaledHeight;
 
 		materialLight.uniforms[ 'samplerColor' ].value = compColor.renderTarget2;
-		materialLight.uniforms[ 'samplerNormalDepth' ].value = compNormalDepth.renderTarget2;
 
 		// create light proxy mesh