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

WebGLRenderer: MAX_ clean up.

Mr.doob 9 жил өмнө
parent
commit
8c82186dc3

+ 14 - 14
examples/js/ShaderSkin.js

@@ -170,9 +170,9 @@ THREE.ShaderSkin = {
 				"vec3 totalSpecularLight = vec3( 0.0 );",
 				"vec3 totalDiffuseLight = vec3( 0.0 );",
 
-				"#if MAX_POINT_LIGHTS > 0",
+				"#if POINT_LIGHTS > 0",
 
-					"for ( int i = 0; i < MAX_POINT_LIGHTS; i ++ ) {",
+					"for ( int i = 0; i < POINT_LIGHTS; i ++ ) {",
 
 						"vec3 lVector = pointLights[ i ].position + vViewPosition.xyz;",
 
@@ -195,9 +195,9 @@ THREE.ShaderSkin = {
 
 				// directional lights
 
-				"#if MAX_DIR_LIGHTS > 0",
+				"#if DIR_LIGHTS > 0",
 
-					"for( int i = 0; i < MAX_DIR_LIGHTS; i++ ) {",
+					"for( int i = 0; i < DIR_LIGHTS; i++ ) {",
 
 						"vec3 dirVector = directionalLights[ i ].direction;",
 
@@ -216,9 +216,9 @@ THREE.ShaderSkin = {
 
 				// hemisphere lights
 
-				"#if MAX_HEMI_LIGHTS > 0",
+				"#if HEMI_LIGHTS > 0",
 
-					"for ( int i = 0; i < MAX_HEMI_LIGHTS; i ++ ) {",
+					"for ( int i = 0; i < HEMI_LIGHTS; i ++ ) {",
 
 						"vec3 lVector = hemisphereLightDirection[ i ];",
 
@@ -452,15 +452,15 @@ THREE.ShaderSkin = {
 				"vec3 totalDiffuseLight = vec3( 0.0 );",
 				"vec3 totalSpecularLight = vec3( 0.0 );",
 
-				"#if MAX_POINT_LIGHTS > 0",
+				"#if POINT_LIGHTS > 0",
+
+					"for ( int i = 0; i < POINT_LIGHTS; i ++ ) {",
 
-					"for ( int i = 0; i < MAX_POINT_LIGHTS; i ++ ) {",
-						
 						"vec3 pointVector = normalize( pointLights[ i ].direction );",
 						"float attenuation = calcLightAttenuation( length( lVector ), pointLights[ i ].distance, pointLights[ i ].decay );",
-				
+
 						"float pointDiffuseWeight = max( dot( normal, pointVector ), 0.0 );",
-				
+
 						"totalDiffuseLight += pointLightColor[ i ] * ( pointDiffuseWeight * attenuation );",
 
 						"if ( passID == 1 ) {",
@@ -477,15 +477,15 @@ THREE.ShaderSkin = {
 
 				// directional lights
 
-				"#if MAX_DIR_LIGHTS > 0",
+				"#if DIR_LIGHTS > 0",
 
-					"for( int i = 0; i < MAX_DIR_LIGHTS; i++ ) {",
+					"for( int i = 0; i < DIR_LIGHTS; i++ ) {",
 
 						"vec3 dirVector = directionalLights[ i ].direction;",
 
 						"float dirDiffuseWeight = max( dot( normal, dirVector ), 0.0 );",
 
-					
+
 						"totalDiffuseLight += directionalLights[ i ].color * dirDiffuseWeight;",
 
 						"if ( passID == 1 ) {",

+ 6 - 6
examples/js/ShaderTerrain.js

@@ -142,9 +142,9 @@ THREE.ShaderTerrain = {
 
 				// point lights
 
-				"#if MAX_POINT_LIGHTS > 0",
+				"#if POINT_LIGHTS > 0",
 
-					"for ( int i = 0; i < MAX_POINT_LIGHTS; i ++ ) {",
+					"for ( int i = 0; i < POINT_LIGHTS; i ++ ) {",
 
 						"vec3 lVector = pointLights[ i ].position + vViewPosition.xyz;",
 
@@ -168,12 +168,12 @@ THREE.ShaderTerrain = {
 
 				// directional lights
 
-				"#if MAX_DIR_LIGHTS > 0",
+				"#if DIR_LIGHTS > 0",
 
 					"vec3 dirDiffuse = vec3( 0.0 );",
 					"vec3 dirSpecular = vec3( 0.0 );",
 
-					"for( int i = 0; i < MAX_DIR_LIGHTS; i++ ) {",
+					"for( int i = 0; i < DIR_LIGHTS; i++ ) {",
 
 						"vec3 dirVector = directionalLights[ i ].direction;",
 						"vec3 dirHalfVector = normalize( dirVector + viewPosition );",
@@ -192,12 +192,12 @@ THREE.ShaderTerrain = {
 
 				// hemisphere lights
 
-				"#if MAX_HEMI_LIGHTS > 0",
+				"#if HEMI_LIGHTS > 0",
 
 					"vec3 hemiDiffuse  = vec3( 0.0 );",
 					"vec3 hemiSpecular = vec3( 0.0 );",
 
-					"for( int i = 0; i < MAX_HEMI_LIGHTS; i ++ ) {",
+					"for( int i = 0; i < HEMI_LIGHTS; i ++ ) {",
 
 						"vec3 lVector = hemisphereLightDirection[ i ];",
 

+ 2 - 2
examples/webgl_shaders_tonemapping.html

@@ -166,11 +166,11 @@
 						"void main() {",
 							"vec3 normal = normalize( -vNormal );",
 							"vec3 viewPosition = normalize( vViewPosition );",
-							"#if MAX_DIR_LIGHTS > 0",
+							"#if DIR_LIGHTS > 0",
 
 								"vec3 dirDiffuse = vec3( 0.0 );",
 
-								"for( int i = 0; i < MAX_DIR_LIGHTS; i ++ ) {",
+								"for( int i = 0; i < DIR_LIGHTS; i ++ ) {",
 
 									"vec4 lDirection = viewMatrix * vec4( directionalLights[i].direction, 0.0 );",
 									"vec3 dirVector = normalize( lDirection.xyz );",

+ 8 - 8
src/renderers/shaders/ShaderChunk/lights_lambert_vertex.glsl

@@ -9,9 +9,9 @@ vLightFront = vec3( 0.0 );
 	vLightBack = vec3( 0.0 );
 #endif
 
-#if MAX_POINT_LIGHTS > 0
+#if POINT_LIGHTS > 0
 
-	for ( int i = 0; i < MAX_POINT_LIGHTS; i ++ ) {
+	for ( int i = 0; i < POINT_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getPointDirectLight( pointLights[ i ], geometry );
 
@@ -30,9 +30,9 @@ vLightFront = vec3( 0.0 );
 
 #endif
 
-#if MAX_SPOT_LIGHTS > 0
+#if SPOT_LIGHTS > 0
 
-	for ( int i = 0; i < MAX_SPOT_LIGHTS; i ++ ) {
+	for ( int i = 0; i < SPOT_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getSpotDirectLight( spotLights[ i ], geometry );
 
@@ -50,9 +50,9 @@ vLightFront = vec3( 0.0 );
 
 #endif
 
-#if MAX_DIR_LIGHTS > 0
+#if DIR_LIGHTS > 0
 
-	for ( int i = 0; i < MAX_DIR_LIGHTS; i ++ ) {
+	for ( int i = 0; i < DIR_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getDirectionalDirectLight( directionalLights[ i ], geometry );
 
@@ -81,9 +81,9 @@ vLightFront = vec3( 0.0 );
 
 		#endif
 
-		#if MAX_HEMI_LIGHTS > 0
+		#if HEMI_LIGHTS > 0
 
-			for ( int i = 0; i < MAX_HEMI_LIGHTS; i ++ ) {
+			for ( int i = 0; i < HEMI_LIGHTS; i ++ ) {
 
 				vLightFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );
 

+ 8 - 8
src/renderers/shaders/ShaderChunk/lights_pars.glsl

@@ -7,14 +7,14 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 
 }
 
-#if MAX_DIR_LIGHTS > 0
+#if DIR_LIGHTS > 0
 
 	struct DirectionalLight {
 	  vec3 direction;
 	  vec3 color;
 	};
 
-	uniform DirectionalLight directionalLights[ MAX_DIR_LIGHTS ];
+	uniform DirectionalLight directionalLights[ DIR_LIGHTS ];
 
 	IncidentLight getDirectionalDirectLight( const in DirectionalLight directionalLight, const in GeometricContext geometry ) {
 
@@ -29,7 +29,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 #endif
 
 
-#if MAX_POINT_LIGHTS > 0
+#if POINT_LIGHTS > 0
 
 	struct PointLight {
 	  vec3 position;
@@ -38,7 +38,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 	  float decay;
 	};
 
-	uniform PointLight pointLights[ MAX_POINT_LIGHTS ];
+	uniform PointLight pointLights[ POINT_LIGHTS ];
 
 	IncidentLight getPointDirectLight( const in PointLight pointLight, const in GeometricContext geometry ) {
 
@@ -56,7 +56,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 #endif
 
 
-#if MAX_SPOT_LIGHTS > 0
+#if SPOT_LIGHTS > 0
 
 	struct SpotLight {
 	  vec3 position;
@@ -68,7 +68,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 	  float exponent;
 	};
 
-	uniform SpotLight spotLights[ MAX_SPOT_LIGHTS ];
+	uniform SpotLight spotLights[ SPOT_LIGHTS ];
 
 	IncidentLight getSpotDirectLight( const in SpotLight spotLight, const in GeometricContext geometry ) {
 
@@ -100,7 +100,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 #endif
 
 
-#if MAX_HEMI_LIGHTS > 0
+#if HEMI_LIGHTS > 0
 
 	struct HemisphereLight {
 	  vec3 direction;
@@ -108,7 +108,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 	  vec3 groundColor;
 	};
 
-	uniform HemisphereLight hemisphereLights[ MAX_HEMI_LIGHTS ];
+	uniform HemisphereLight hemisphereLights[ HEMI_LIGHTS ];
 
 	vec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in GeometricContext geometry ) {
 

+ 2 - 2
src/renderers/shaders/ShaderChunk/lights_phong_pars_vertex.glsl

@@ -4,8 +4,8 @@
 
 #endif
 
-#if MAX_POINT_LIGHTS > 0
+#if POINT_LIGHTS > 0
 
-	uniform vec3 pointLightPosition[ MAX_POINT_LIGHTS ];
+	uniform vec3 pointLightPosition[ POINT_LIGHTS ];
 
 #endif

+ 8 - 8
src/renderers/shaders/ShaderChunk/lights_template.glsl

@@ -15,9 +15,9 @@
 
 GeometricContext geometry = GeometricContext( -vViewPosition, normalize( normal ), normalize(vViewPosition ) );
 
-#if ( MAX_POINT_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
+#if ( POINT_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
 
-	for ( int i = 0; i < MAX_POINT_LIGHTS; i ++ ) {
+	for ( int i = 0; i < POINT_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getPointDirectLight( pointLights[ i ], geometry );
 
@@ -27,9 +27,9 @@ GeometricContext geometry = GeometricContext( -vViewPosition, normalize( normal
 
 #endif
 
-#if ( MAX_SPOT_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
+#if ( SPOT_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
 
-	for ( int i = 0; i < MAX_SPOT_LIGHTS; i ++ ) {
+	for ( int i = 0; i < SPOT_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getSpotDirectLight( spotLights[ i ], geometry );
 
@@ -39,9 +39,9 @@ GeometricContext geometry = GeometricContext( -vViewPosition, normalize( normal
 
 #endif
 
-#if ( MAX_DIR_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
+#if ( DIR_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
 
-	for ( int i = 0; i < MAX_DIR_LIGHTS; i ++ ) {
+	for ( int i = 0; i < DIR_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getDirectionalDirectLight( directionalLights[ i ], geometry );
 
@@ -63,9 +63,9 @@ GeometricContext geometry = GeometricContext( -vViewPosition, normalize( normal
 
 #endif
 
-#if ( MAX_HEMI_LIGHTS > 0 )
+#if ( HEMI_LIGHTS > 0 )
 
-		for ( int i = 0; i < MAX_HEMI_LIGHTS; i ++ ) {
+		for ( int i = 0; i < HEMI_LIGHTS; i ++ ) {
 
 			indirectDiffuseIrradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );
 

+ 8 - 8
src/renderers/webgl/WebGLProgram.js

@@ -245,10 +245,10 @@ THREE.WebGLProgram = ( function () {
 				renderer.gammaOutput ? '#define GAMMA_OUTPUT' : '',
 				'#define GAMMA_FACTOR ' + gammaFactorDefine,
 
-				'#define MAX_DIR_LIGHTS ' + parameters.maxDirLights,
-				'#define MAX_POINT_LIGHTS ' + parameters.maxPointLights,
-				'#define MAX_SPOT_LIGHTS ' + parameters.maxSpotLights,
-				'#define MAX_HEMI_LIGHTS ' + parameters.maxHemiLights,
+				'#define DIR_LIGHTS ' + parameters.dirLights,
+				'#define POINT_LIGHTS ' + parameters.pointLights,
+				'#define SPOT_LIGHTS ' + parameters.spotLights,
+				'#define HEMI_LIGHTS ' + parameters.hemiLights,
 
 				'#define MAX_SHADOWS ' + parameters.maxShadows,
 
@@ -356,10 +356,10 @@ THREE.WebGLProgram = ( function () {
 
 				customDefines,
 
-				'#define MAX_DIR_LIGHTS ' + parameters.maxDirLights,
-				'#define MAX_POINT_LIGHTS ' + parameters.maxPointLights,
-				'#define MAX_SPOT_LIGHTS ' + parameters.maxSpotLights,
-				'#define MAX_HEMI_LIGHTS ' + parameters.maxHemiLights,
+				'#define DIR_LIGHTS ' + parameters.dirLights,
+				'#define POINT_LIGHTS ' + parameters.pointLights,
+				'#define SPOT_LIGHTS ' + parameters.spotLights,
+				'#define HEMI_LIGHTS ' + parameters.hemiLights,
 
 				'#define MAX_SHADOWS ' + parameters.maxShadows,
 

+ 6 - 6
src/renderers/webgl/WebGLPrograms.js

@@ -21,8 +21,8 @@ THREE.WebGLPrograms = function ( renderer, capabilities ) {
 		"alphaMap", "combine", "vertexColors", "fog", "useFog", "fogExp",
 		"flatShading", "sizeAttenuation", "logarithmicDepthBuffer", "skinning",
 		"maxBones", "useVertexTexture", "morphTargets", "morphNormals",
-		"maxMorphTargets", "maxMorphNormals", "maxDirLights", "maxPointLights",
-		"maxSpotLights", "maxHemiLights", "maxShadows", "shadowMapEnabled", "pointLightShadows",
+		"maxMorphTargets", "maxMorphNormals", "dirLights", "pointLights",
+		"spotLights", "hemiLights", "maxShadows", "shadowMapEnabled", "pointLightShadows",
 		"shadowMapType", "shadowMapDebug", "alphaTest", "doubleSided",
 		"flipSided"
 	];
@@ -131,10 +131,10 @@ THREE.WebGLPrograms = function ( renderer, capabilities ) {
 			maxMorphTargets: renderer.maxMorphTargets,
 			maxMorphNormals: renderer.maxMorphNormals,
 
-			maxDirLights: lights.directional.length,
-			maxPointLights: lights.point.length,
-			maxSpotLights: lights.spot.length,
-			maxHemiLights: lights.hemi.length,
+			dirLights: lights.directional.length,
+			pointLights: lights.point.length,
+			spotLights: lights.spot.length,
+			hemiLights: lights.hemi.length,
 
 			maxShadows: lights.shadows,
 			pointLightShadows: lights.shadowsPointLight,