{"version":3,"file":"EmbossFilter.mjs","sources":["../../src/emboss/EmbossFilter.ts"],"sourcesContent":["import { Filter, GlProgram, GpuProgram } from 'pixi.js';\nimport { vertex, wgslVertex } from '../defaults';\nimport fragment from './emboss.frag';\nimport source from './emboss.wgsl';\n\n/**\n * An RGB Split Filter.<br>\n * ![original](../screenshots/original.png)![filter](../screenshots/emboss.png)\n *\n * @class\n * @extends Filter\n */\nexport class EmbossFilter extends Filter\n{\n    public uniforms: {\n        uStrength: number;\n    };\n\n    /**\n     * @param {number} [strength=5] - Strength of the emboss.\n     */\n    constructor(strength = 5)\n    {\n        const gpuProgram = GpuProgram.from({\n            vertex: {\n                source: wgslVertex,\n                entryPoint: 'mainVertex',\n            },\n            fragment: {\n                source,\n                entryPoint: 'mainFragment',\n            },\n        });\n\n        const glProgram = GlProgram.from({\n            vertex,\n            fragment,\n            name: 'emboss-filter',\n        });\n\n        super({\n            gpuProgram,\n            glProgram,\n            resources: {\n                embossUniforms: {\n                    uStrength: { value: strength, type: 'f32' },\n                }\n            },\n        });\n\n        this.uniforms = this.resources.embossUniforms.uniforms;\n    }\n\n    /**\n     * Strength of the emboss\n     * @default 5\n     */\n    get strength(): number { return this.uniforms.uStrength; }\n    set strength(value: number) { this.uniforms.uStrength = value; }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;AAYO,MAAM,qBAAqB,MAClC,CAAA;AAAA;AAAA;AAAA;AAAA,EAQI,WAAA,CAAY,WAAW,CACvB,EAAA;AACI,IAAM,MAAA,UAAA,GAAa,WAAW,IAAK,CAAA;AAAA,MAC/B,MAAQ,EAAA;AAAA,QACJ,MAAQ,EAAA,UAAA;AAAA,QACR,UAAY,EAAA,YAAA;AAAA,OAChB;AAAA,MACA,QAAU,EAAA;AAAA,QACN,MAAA;AAAA,QACA,UAAY,EAAA,cAAA;AAAA,OAChB;AAAA,KACH,CAAA,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,UAAU,IAAK,CAAA;AAAA,MAC7B,MAAA;AAAA,MACA,QAAA;AAAA,MACA,IAAM,EAAA,eAAA;AAAA,KACT,CAAA,CAAA;AAED,IAAM,KAAA,CAAA;AAAA,MACF,UAAA;AAAA,MACA,SAAA;AAAA,MACA,SAAW,EAAA;AAAA,QACP,cAAgB,EAAA;AAAA,UACZ,SAAW,EAAA,EAAE,KAAO,EAAA,QAAA,EAAU,MAAM,KAAM,EAAA;AAAA,SAC9C;AAAA,OACJ;AAAA,KACH,CAAA,CAAA;AAlCL,IAAO,aAAA,CAAA,IAAA,EAAA,UAAA,CAAA,CAAA;AAoCH,IAAK,IAAA,CAAA,QAAA,GAAW,IAAK,CAAA,SAAA,CAAU,cAAe,CAAA,QAAA,CAAA;AAAA,GAClD;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,IAAI,QAAmB,GAAA;AAAE,IAAA,OAAO,KAAK,QAAS,CAAA,SAAA,CAAA;AAAA,GAAW;AAAA,EACzD,IAAI,SAAS,KAAe,EAAA;AAAE,IAAA,IAAA,CAAK,SAAS,SAAY,GAAA,KAAA,CAAA;AAAA,GAAO;AACnE;;;;"}