Browse Source

WebGLRenderer/Plugins: Cleaned up attributes code.

Mr.doob 10 years ago
parent
commit
db0644ed51

+ 0 - 1
src/renderers/WebGLRenderer.js

@@ -1726,7 +1726,6 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 		// custom render plugins (post pass)
 
-		this.resetGLState();
 		spritePlugin.render( scene, camera );
 		lensFlarePlugin.render( scene, camera, _currentWidth, _currentHeight );
 

+ 2 - 1
src/renderers/webgl/plugins/LensFlarePlugin.js

@@ -295,9 +295,10 @@ THREE.LensFlarePlugin = function ( renderer, flares ) {
 
 		gl.useProgram( program );
 
-		renderer.state.disableUnusedAttributes();
+		renderer.state.initAttributes();
 		renderer.state.enableAttribute( attributes.vertex );
 		renderer.state.enableAttribute( attributes.uv );
+		renderer.state.disableUnusedAttributes();
 
 		// loop through all lens flares to update their occlusion and positions
 		// setup gl and common used attribs/unforms

+ 2 - 1
src/renderers/webgl/plugins/SpritePlugin.js

@@ -98,9 +98,10 @@ THREE.SpritePlugin = function ( renderer, sprites ) {
 
 		gl.useProgram( program );
 
-		renderer.state.disableUnusedAttributes();
+		renderer.state.initAttributes();
 		renderer.state.enableAttribute( attributes.position );
 		renderer.state.enableAttribute( attributes.uv );
+		renderer.state.disableUnusedAttributes();
 
 		gl.disable( gl.CULL_FACE );
 		gl.enable( gl.BLEND );