content/hifi-content/dave/walk-tools/walkTools/libraries/three.js/renderers/webgl/WebGLTextures.js
2022-02-13 22:49:05 +01:00

41 lines
639 B
JavaScript

/**
* @author mrdoob / http://mrdoob.com/
*/
THREE.WebGLTextures = function ( gl ) {
var textures = {};
this.get = function ( texture ) {
if ( textures[ texture.id ] !== undefined ) {
return textures[ texture.id ];
}
return this.create( texture );
};
this.create = function ( texture ) {
texture.addEventListener( 'dispose', this.delete );
textures[ texture.id ] = gl.createTexture();
return textures[ texture.id ];
};
this.delete = function ( texture ) {
texture.removeEventListener( 'dispose', this.delete );
gl.deleteTexture( textures[ texture.id ] );
delete textures[ texture.id ];
};
};