Browse Source

SpritePlugin: Only create program when needed.

Mr.doob 10 years ago
parent
commit
8eace267b2
1 changed files with 10 additions and 2 deletions
  1. 10 2
      src/extras/renderers/plugins/SpritePlugin.js

+ 10 - 2
src/extras/renderers/plugins/SpritePlugin.js

@@ -13,8 +13,8 @@ THREE.SpritePlugin = function ( renderer ) {
 	var program, attributes, uniforms;
 
 	var texture;
-
-	this.init = function () {
+	
+	var init = function () {
 
 		var vertices = new Float32Array( [
 			- 0.5, - 0.5,  0, 0,
@@ -80,6 +80,8 @@ THREE.SpritePlugin = function ( renderer ) {
 
 	};
 
+	this.init = function () {}; // TODO: Remove
+
 	this.render = function ( scene, camera, viewportWidth, viewportHeight ) {
 
 		sprites.length = 0;
@@ -98,6 +100,12 @@ THREE.SpritePlugin = function ( renderer ) {
 
 		// setup gl
 
+		if ( program === undefined ) {
+
+			init();
+
+		}
+
 		gl.useProgram( program );
 
 		gl.enableVertexAttribArray( attributes.position );