Bläddra i källkod

WebGLRenderer: MAX_ to NUM_. See 8c82186dc3c71e1d6d61c28f67acc29a072ec1d7.

Mr.doob 9 år sedan
förälder
incheckning
d6ee54be24

+ 10 - 10
examples/js/ShaderSkin.js

@@ -170,9 +170,9 @@ THREE.ShaderSkin = {
 				"vec3 totalSpecularLight = vec3( 0.0 );",
 				"vec3 totalDiffuseLight = vec3( 0.0 );",
 
-				"#if POINT_LIGHTS > 0",
+				"#if NUM_POINT_LIGHTS > 0",
 
-					"for ( int i = 0; i < POINT_LIGHTS; i ++ ) {",
+					"for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {",
 
 						"vec3 lVector = pointLights[ i ].position + vViewPosition.xyz;",
 
@@ -195,9 +195,9 @@ THREE.ShaderSkin = {
 
 				// directional lights
 
-				"#if DIR_LIGHTS > 0",
+				"#if NUM_DIR_LIGHTS > 0",
 
-					"for( int i = 0; i < DIR_LIGHTS; i++ ) {",
+					"for( int i = 0; i < NUM_DIR_LIGHTS; i++ ) {",
 
 						"vec3 dirVector = directionalLights[ i ].direction;",
 
@@ -216,9 +216,9 @@ THREE.ShaderSkin = {
 
 				// hemisphere lights
 
-				"#if HEMI_LIGHTS > 0",
+				"#if NUM_HEMI_LIGHTS > 0",
 
-					"for ( int i = 0; i < HEMI_LIGHTS; i ++ ) {",
+					"for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {",
 
 						"vec3 lVector = hemisphereLightDirection[ i ];",
 
@@ -452,9 +452,9 @@ THREE.ShaderSkin = {
 				"vec3 totalDiffuseLight = vec3( 0.0 );",
 				"vec3 totalSpecularLight = vec3( 0.0 );",
 
-				"#if POINT_LIGHTS > 0",
+				"#if NUM_POINT_LIGHTS > 0",
 
-					"for ( int i = 0; i < POINT_LIGHTS; i ++ ) {",
+					"for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {",
 
 						"vec3 pointVector = normalize( pointLights[ i ].direction );",
 						"float attenuation = calcLightAttenuation( length( lVector ), pointLights[ i ].distance, pointLights[ i ].decay );",
@@ -477,9 +477,9 @@ THREE.ShaderSkin = {
 
 				// directional lights
 
-				"#if DIR_LIGHTS > 0",
+				"#if NUM_DIR_LIGHTS > 0",
 
-					"for( int i = 0; i < DIR_LIGHTS; i++ ) {",
+					"for( int i = 0; i < NUM_DIR_LIGHTS; i++ ) {",
 
 						"vec3 dirVector = directionalLights[ i ].direction;",
 

+ 6 - 6
examples/js/ShaderTerrain.js

@@ -142,9 +142,9 @@ THREE.ShaderTerrain = {
 
 				// point lights
 
-				"#if POINT_LIGHTS > 0",
+				"#if NUM_POINT_LIGHTS > 0",
 
-					"for ( int i = 0; i < POINT_LIGHTS; i ++ ) {",
+					"for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {",
 
 						"vec3 lVector = pointLights[ i ].position + vViewPosition.xyz;",
 
@@ -168,12 +168,12 @@ THREE.ShaderTerrain = {
 
 				// directional lights
 
-				"#if DIR_LIGHTS > 0",
+				"#if NUM_DIR_LIGHTS > 0",
 
 					"vec3 dirDiffuse = vec3( 0.0 );",
 					"vec3 dirSpecular = vec3( 0.0 );",
 
-					"for( int i = 0; i < DIR_LIGHTS; i++ ) {",
+					"for( int i = 0; i < NUM_DIR_LIGHTS; i++ ) {",
 
 						"vec3 dirVector = directionalLights[ i ].direction;",
 						"vec3 dirHalfVector = normalize( dirVector + viewPosition );",
@@ -192,12 +192,12 @@ THREE.ShaderTerrain = {
 
 				// hemisphere lights
 
-				"#if HEMI_LIGHTS > 0",
+				"#if NUM_HEMI_LIGHTS > 0",
 
 					"vec3 hemiDiffuse  = vec3( 0.0 );",
 					"vec3 hemiSpecular = vec3( 0.0 );",
 
-					"for( int i = 0; i < HEMI_LIGHTS; i ++ ) {",
+					"for( int i = 0; i < NUM_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 DIR_LIGHTS > 0",
+							"#if NUM_DIR_LIGHTS > 0",
 
 								"vec3 dirDiffuse = vec3( 0.0 );",
 
-								"for( int i = 0; i < DIR_LIGHTS; i ++ ) {",
+								"for( int i = 0; i < NUM_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 POINT_LIGHTS > 0
+#if NUM_POINT_LIGHTS > 0
 
-	for ( int i = 0; i < POINT_LIGHTS; i ++ ) {
+	for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getPointDirectLight( pointLights[ i ], geometry );
 
@@ -30,9 +30,9 @@ vLightFront = vec3( 0.0 );
 
 #endif
 
-#if SPOT_LIGHTS > 0
+#if NUM_SPOT_LIGHTS > 0
 
-	for ( int i = 0; i < SPOT_LIGHTS; i ++ ) {
+	for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getSpotDirectLight( spotLights[ i ], geometry );
 
@@ -50,9 +50,9 @@ vLightFront = vec3( 0.0 );
 
 #endif
 
-#if DIR_LIGHTS > 0
+#if NUM_DIR_LIGHTS > 0
 
-	for ( int i = 0; i < DIR_LIGHTS; i ++ ) {
+	for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getDirectionalDirectLight( directionalLights[ i ], geometry );
 
@@ -81,9 +81,9 @@ vLightFront = vec3( 0.0 );
 
 		#endif
 
-		#if HEMI_LIGHTS > 0
+		#if NUM_HEMI_LIGHTS > 0
 
-			for ( int i = 0; i < HEMI_LIGHTS; i ++ ) {
+			for ( int i = 0; i < NUM_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 DIR_LIGHTS > 0
+#if NUM_DIR_LIGHTS > 0
 
 	struct DirectionalLight {
 	  vec3 direction;
 	  vec3 color;
 	};
 
-	uniform DirectionalLight directionalLights[ DIR_LIGHTS ];
+	uniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];
 
 	IncidentLight getDirectionalDirectLight( const in DirectionalLight directionalLight, const in GeometricContext geometry ) {
 
@@ -29,7 +29,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 #endif
 
 
-#if POINT_LIGHTS > 0
+#if NUM_POINT_LIGHTS > 0
 
 	struct PointLight {
 	  vec3 position;
@@ -38,7 +38,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 	  float decay;
 	};
 
-	uniform PointLight pointLights[ POINT_LIGHTS ];
+	uniform PointLight pointLights[ NUM_POINT_LIGHTS ];
 
 	IncidentLight getPointDirectLight( const in PointLight pointLight, const in GeometricContext geometry ) {
 
@@ -56,7 +56,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 #endif
 
 
-#if SPOT_LIGHTS > 0
+#if NUM_SPOT_LIGHTS > 0
 
 	struct SpotLight {
 	  vec3 position;
@@ -68,7 +68,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 	  float exponent;
 	};
 
-	uniform SpotLight spotLights[ SPOT_LIGHTS ];
+	uniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];
 
 	IncidentLight getSpotDirectLight( const in SpotLight spotLight, const in GeometricContext geometry ) {
 
@@ -100,7 +100,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 #endif
 
 
-#if HEMI_LIGHTS > 0
+#if NUM_HEMI_LIGHTS > 0
 
 	struct HemisphereLight {
 	  vec3 direction;
@@ -108,7 +108,7 @@ vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {
 	  vec3 groundColor;
 	};
 
-	uniform HemisphereLight hemisphereLights[ HEMI_LIGHTS ];
+	uniform HemisphereLight hemisphereLights[ NUM_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 POINT_LIGHTS > 0
+#if NUM_POINT_LIGHTS > 0
 
-	uniform vec3 pointLightPosition[ POINT_LIGHTS ];
+	uniform vec3 pointLightPosition[ NUM_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 ( POINT_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
+#if ( NUM_POINT_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
 
-	for ( int i = 0; i < POINT_LIGHTS; i ++ ) {
+	for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getPointDirectLight( pointLights[ i ], geometry );
 
@@ -27,9 +27,9 @@ GeometricContext geometry = GeometricContext( -vViewPosition, normalize( normal
 
 #endif
 
-#if ( SPOT_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
+#if ( NUM_SPOT_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
 
-	for ( int i = 0; i < SPOT_LIGHTS; i ++ ) {
+	for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getSpotDirectLight( spotLights[ i ], geometry );
 
@@ -39,9 +39,9 @@ GeometricContext geometry = GeometricContext( -vViewPosition, normalize( normal
 
 #endif
 
-#if ( DIR_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
+#if ( NUM_DIR_LIGHTS > 0 ) && defined( Material_RE_DirectLight )
 
-	for ( int i = 0; i < DIR_LIGHTS; i ++ ) {
+	for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {
 
 		IncidentLight directLight = getDirectionalDirectLight( directionalLights[ i ], geometry );
 
@@ -63,9 +63,9 @@ GeometricContext geometry = GeometricContext( -vViewPosition, normalize( normal
 
 #endif
 
-#if ( HEMI_LIGHTS > 0 )
+#if ( NUM_HEMI_LIGHTS > 0 )
 
-		for ( int i = 0; i < HEMI_LIGHTS; i ++ ) {
+		for ( int i = 0; i < NUM_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 DIR_LIGHTS ' + parameters.dirLights,
-				'#define POINT_LIGHTS ' + parameters.pointLights,
-				'#define SPOT_LIGHTS ' + parameters.spotLights,
-				'#define HEMI_LIGHTS ' + parameters.hemiLights,
+				'#define NUM_DIR_LIGHTS ' + parameters.numDirLights,
+				'#define NUM_POINT_LIGHTS ' + parameters.numPointLights,
+				'#define NUM_SPOT_LIGHTS ' + parameters.numSpotLights,
+				'#define NUM_HEMI_LIGHTS ' + parameters.numHemiLights,
 
 				'#define MAX_SHADOWS ' + parameters.maxShadows,
 
@@ -356,10 +356,10 @@ THREE.WebGLProgram = ( function () {
 
 				customDefines,
 
-				'#define DIR_LIGHTS ' + parameters.dirLights,
-				'#define POINT_LIGHTS ' + parameters.pointLights,
-				'#define SPOT_LIGHTS ' + parameters.spotLights,
-				'#define HEMI_LIGHTS ' + parameters.hemiLights,
+				'#define NUM_DIR_LIGHTS ' + parameters.numDirLights,
+				'#define NUM_POINT_LIGHTS ' + parameters.numPointLights,
+				'#define NUM_SPOT_LIGHTS ' + parameters.numSpotLights,
+				'#define NUM_HEMI_LIGHTS ' + parameters.numHemiLights,
 
 				'#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", "dirLights", "pointLights",
-		"spotLights", "hemiLights", "maxShadows", "shadowMapEnabled", "pointLightShadows",
+		"maxMorphTargets", "maxMorphNormals", "numDirLights", "numPointLights",
+		"numSpotLights", "numHemiLights", "maxShadows", "shadowMapEnabled", "pointLightShadows",
 		"shadowMapType", "shadowMapDebug", "alphaTest", "doubleSided",
 		"flipSided"
 	];
@@ -131,10 +131,10 @@ THREE.WebGLPrograms = function ( renderer, capabilities ) {
 			maxMorphTargets: renderer.maxMorphTargets,
 			maxMorphNormals: renderer.maxMorphNormals,
 
-			dirLights: lights.directional.length,
-			pointLights: lights.point.length,
-			spotLights: lights.spot.length,
-			hemiLights: lights.hemi.length,
+			numDirLights: lights.directional.length,
+			numPointLights: lights.point.length,
+			numSpotLights: lights.spot.length,
+			numHemiLights: lights.hemi.length,
 
 			maxShadows: lights.shadows,
 			pointLightShadows: lights.shadowsPointLight,