Browse Source

WebGLRenderer: Minor tweaks.

Mr.doob 10 years ago
parent
commit
9ad1129dbd
2 changed files with 15 additions and 20 deletions
  1. 14 19
      src/renderers/WebGLRenderer.js
  2. 1 1
      src/renderers/webgl/WebGLShadowMap.js

+ 14 - 19
src/renderers/WebGLRenderer.js

@@ -1671,6 +1671,7 @@ THREE.WebGLRenderer = function ( parameters ) {
 		materialProperties.uniformsList = [];
 		materialProperties.uniformsList = [];
 
 
 		var uniformLocations = materialProperties.program.getUniforms();
 		var uniformLocations = materialProperties.program.getUniforms();
+
 		for ( var u in materialProperties.__webglShader.uniforms ) {
 		for ( var u in materialProperties.__webglShader.uniforms ) {
 
 
 			var location = uniformLocations[ u ];
 			var location = uniformLocations[ u ];
@@ -2238,7 +2239,7 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 
 	function loadUniformsGeneric ( uniforms ) {
 	function loadUniformsGeneric ( uniforms ) {
 
 
-		var texture, textureUnit, offset;
+		var texture, textureUnit;
 
 
 		for ( var j = 0, jl = uniforms.length; j < jl; j ++ ) {
 		for ( var j = 0, jl = uniforms.length; j < jl; j ++ ) {
 
 
@@ -2387,12 +2388,10 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 
 					}
 					}
 
 
-					for ( var i = 0, il = value.length; i < il; i ++ ) {
-
-						offset = i * 2;
+					for ( var i = 0, i2 = 0, il = value.length; i < il; i ++, i2 += 2 ) {
 
 
-						uniform._array[ offset + 0 ] = value[ i ].x;
-						uniform._array[ offset + 1 ] = value[ i ].y;
+						uniform._array[ i2 + 0 ] = value[ i ].x;
+						uniform._array[ i2 + 1 ] = value[ i ].y;
 
 
 					}
 					}
 
 
@@ -2410,13 +2409,11 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 
 					}
 					}
 
 
-					for ( var i = 0, il = value.length; i < il; i ++ ) {
+					for ( var i = 0, i3 = 0, il = value.length; i < il; i ++, i3 += 3 ) {
 
 
-						offset = i * 3;
-
-						uniform._array[ offset + 0 ] = value[ i ].x;
-						uniform._array[ offset + 1 ] = value[ i ].y;
-						uniform._array[ offset + 2 ] = value[ i ].z;
+						uniform._array[ i3 + 0 ] = value[ i ].x;
+						uniform._array[ i3 + 1 ] = value[ i ].y;
+						uniform._array[ i3 + 2 ] = value[ i ].z;
 
 
 					}
 					}
 
 
@@ -2434,14 +2431,12 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 
 					}
 					}
 
 
-					for ( var i = 0, il = value.length; i < il; i ++ ) {
-
-						offset = i * 4;
+					for ( var i = 0, i4 = 0, il = value.length; i < il; i ++, i4 += 4 ) {
 
 
-						uniform._array[ offset + 0 ] = value[ i ].x;
-						uniform._array[ offset + 1 ] = value[ i ].y;
-						uniform._array[ offset + 2 ] = value[ i ].z;
-						uniform._array[ offset + 3 ] = value[ i ].w;
+						uniform._array[ i4 + 0 ] = value[ i ].x;
+						uniform._array[ i4 + 1 ] = value[ i ].y;
+						uniform._array[ i4 + 2 ] = value[ i ].z;
+						uniform._array[ i4 + 3 ] = value[ i ].w;
 
 
 					}
 					}
 
 

+ 1 - 1
src/renderers/webgl/WebGLShadowMap.js

@@ -214,7 +214,7 @@ THREE.WebGLShadowMap = function ( _renderer, _lights, _objects ) {
 						var group = groups[ j ];
 						var group = groups[ j ];
 						var groupMaterial = materials[ group.materialIndex ];
 						var groupMaterial = materials[ group.materialIndex ];
 
 
-						if ( groupMaterial !== undefined ) {
+						if ( groupMaterial.visible === true ) {
 
 
 							_renderer.renderBufferDirect( shadowCamera, _lights, null, geometry, getDepthMaterial( object, groupMaterial ), object, group );
 							_renderer.renderBufferDirect( shadowCamera, _lights, null, geometry, getDepthMaterial( object, groupMaterial ), object, group );