UNPKG

kinetic-slider

Version:

A WebGL-powered kinetic slider component using PIXI.js

34 lines (31 loc) 1.15 kB
import { EmbossFilter } from 'pixi-filters'; import { ShaderResourceManager } from '../managers/ShaderResourceManager.js'; function createEmbossFilter(config) { const shaderManager = ShaderResourceManager.getInstance(); const shaderKey = `emboss-filter-${config.strength || 5}`; const filter = new EmbossFilter(config.strength); try { shaderManager.registerFilter(filter, shaderKey); } catch (error) { console.warn("Error registering emboss filter with shader manager:", error); } const updateIntensity = (intensity) => { const normalizedIntensity = Math.max(0, Math.min(10, intensity)); filter.strength = normalizedIntensity * 2; }; updateIntensity(config.intensity); const reset = () => { filter.strength = config.strength !== void 0 ? config.strength : 5; }; const dispose = () => { try { shaderManager.releaseFilter(filter, shaderKey); } catch (error) { console.warn("Error releasing emboss filter shader:", error); } filter.destroy(); }; return { filter, updateIntensity, reset, dispose }; } export { createEmbossFilter }; //# sourceMappingURL=embossFilter.js.map