Explorar o código

WebGLRenderer: Clean up.

Mr.doob %!s(int64=8) %!d(string=hai) anos
pai
achega
3e8d4a90af
Modificáronse 1 ficheiros con 11 adicións e 11 borrados
  1. 11 11
      src/renderers/WebGLRenderer.js

+ 11 - 11
src/renderers/WebGLRenderer.js

@@ -686,14 +686,16 @@ function WebGLRenderer( parameters ) {
 
 	};
 
+	var program, geometryProgram, updateBuffers;
+
 	this.renderBufferDirect = function ( camera, fog, geometry, material, object, group ) {
 
 		setMaterial( material );
 
-		var program = setProgram( camera, fog, material, object );
+		program = setProgram( camera, fog, material, object );
+		geometryProgram = geometry.id + '_' + program.id + '_' + material.wireframe;
 
-		var updateBuffers = false;
-		var geometryProgram = geometry.id + '_' + program.id + '_' + material.wireframe;
+		updateBuffers = false;
 
 		if ( geometryProgram !== _currentGeometryProgram ) {
 
@@ -708,6 +710,8 @@ function WebGLRenderer( parameters ) {
 
 		if ( morphTargetInfluences !== undefined ) {
 
+			// TODO Remove allocations
+
 			var activeInfluences = [];
 
 			for ( var i = 0, l = morphTargetInfluences.length; i < l; i ++ ) {
@@ -754,8 +758,7 @@ function WebGLRenderer( parameters ) {
 
 			}
 
-			program.getUniforms().setValue(
-				_gl, 'morphTargetInfluences', morphInfluences );
+			program.getUniforms().setValue( _gl, 'morphTargetInfluences', morphInfluences );
 
 			updateBuffers = true;
 
@@ -774,17 +777,13 @@ function WebGLRenderer( parameters ) {
 
 		}
 
-		var renderer;
+		var renderer = bufferRenderer;
 
 		if ( index !== null ) {
 
 			renderer = indexedBufferRenderer;
 			renderer.setIndex( index );
 
-		} else {
-
-			renderer = bufferRenderer;
-
 		}
 
 		if ( updateBuffers ) {
@@ -2296,7 +2295,8 @@ function WebGLRenderer( parameters ) {
 
 			if ( light.castShadow ) {
 
-				_lights.shadows[ lightShadowsLength ++ ] = light;
+				_lights.shadows[ lightShadowsLength ] = light;
+				lightShadowsLength ++;
 
 			}