@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
70 lines • 1.79 kB
TypeScript
export class MaterialManager {
/**
* Stores links from uncompiled (source) materials to managed containers
* @type {HashMap<Material, ManagedMaterial>}
* @private
*/
private __library;
/**
* Cache for unused materials, gives them a second chance to be used before being disposed completely
* @type {Cache<Material, ManagedMaterial>}
* @private
*/
private __cache;
/**
* Stores links from compiled materials back to the container
* @type {HashMap<Material, ManagedMaterial>}
* @private
*/
private __reverse_library;
/**
*
* @type {AbstractMaterialTransformer[]}
* @private
*/
private __transform_chain;
/**
* handle material disposal
* @param {Material} m
* @param {ManagedMaterial} managed_material
* @private
*/
private __dispose_material;
/**
*
* @param {ManagedMaterial} material
* @private
*/
private __handle_last_reference_removed;
/**
*
* @param {Function} klass
* @return {AbstractMaterialTransformer[]}
*/
getCompilationSteps(klass: Function): AbstractMaterialTransformer[];
/**
*
* @param {AbstractMaterialTransformer} def
*/
addCompileStep(def: AbstractMaterialTransformer): void;
/**
*
* @param {AbstractMaterialTransformer} def
* @returns {boolean}
*/
removeCompileStep(def: AbstractMaterialTransformer): boolean;
/**
*
* @param {Material} m
* @returns {Material}
* @private
*/
private __compile;
/**
*
* @param {Material} source
* @returns {Reference<Material>}
*/
obtain(source: Material): Reference<Material>;
}
//# sourceMappingURL=MaterialManager.d.ts.map