UNPKG

@woosh/meep-engine

Version:

Pure JavaScript game engine. Fully featured and production ready.

70 lines 1.79 kB
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