three
Version:
JavaScript 3D library
53 lines (30 loc) • 614 B
JavaScript
/**
* @author fordacious / fordacious.github.io
*/
function WebGLProperties() {
var properties = new WeakMap();
function get( object ) {
var map = properties.get( object );
if ( map === undefined ) {
map = {};
properties.set( object, map );
}
return map;
}
function remove( object ) {
properties.delete( object );
}
function update( object, key, value ) {
properties.get( object )[ key ] = value;
}
function dispose() {
properties = new WeakMap();
}
return {
get: get,
remove: remove,
update: update,
dispose: dispose
};
}
export { WebGLProperties };