sdfsdfs
This commit is contained in:
4
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.d.ts
generated
vendored
Normal file
4
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.d.ts
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
import { Shader } from '../../../rendering/renderers/shared/shader/Shader';
|
||||
export declare class SdfShader extends Shader {
|
||||
constructor();
|
||||
}
|
59
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.js
generated
vendored
Normal file
59
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.js
generated
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
'use strict';
|
||||
|
||||
var Matrix = require('../../../maths/matrix/Matrix.js');
|
||||
var maxRecommendedTextures = require('../../../rendering/batcher/gl/utils/maxRecommendedTextures.js');
|
||||
var compileHighShaderToProgram = require('../../../rendering/high-shader/compileHighShaderToProgram.js');
|
||||
var colorBit = require('../../../rendering/high-shader/shader-bits/colorBit.js');
|
||||
var generateTextureBatchBit = require('../../../rendering/high-shader/shader-bits/generateTextureBatchBit.js');
|
||||
var roundPixelsBit = require('../../../rendering/high-shader/shader-bits/roundPixelsBit.js');
|
||||
var getBatchSamplersUniformGroup = require('../../../rendering/renderers/gl/shader/getBatchSamplersUniformGroup.js');
|
||||
var Shader = require('../../../rendering/renderers/shared/shader/Shader.js');
|
||||
var UniformGroup = require('../../../rendering/renderers/shared/shader/UniformGroup.js');
|
||||
var localUniformMSDFBit = require('./shader-bits/localUniformMSDFBit.js');
|
||||
var mSDFBit = require('./shader-bits/mSDFBit.js');
|
||||
|
||||
"use strict";
|
||||
let gpuProgram;
|
||||
let glProgram;
|
||||
class SdfShader extends Shader.Shader {
|
||||
constructor() {
|
||||
const uniforms = new UniformGroup.UniformGroup({
|
||||
uColor: { value: new Float32Array([1, 1, 1, 1]), type: "vec4<f32>" },
|
||||
uTransformMatrix: { value: new Matrix.Matrix(), type: "mat3x3<f32>" },
|
||||
uDistance: { value: 4, type: "f32" },
|
||||
uRound: { value: 0, type: "f32" }
|
||||
});
|
||||
const maxTextures = maxRecommendedTextures.getMaxTexturesPerBatch();
|
||||
gpuProgram ?? (gpuProgram = compileHighShaderToProgram.compileHighShaderGpuProgram({
|
||||
name: "sdf-shader",
|
||||
bits: [
|
||||
colorBit.colorBit,
|
||||
generateTextureBatchBit.generateTextureBatchBit(maxTextures),
|
||||
localUniformMSDFBit.localUniformMSDFBit,
|
||||
mSDFBit.mSDFBit,
|
||||
roundPixelsBit.roundPixelsBit
|
||||
]
|
||||
}));
|
||||
glProgram ?? (glProgram = compileHighShaderToProgram.compileHighShaderGlProgram({
|
||||
name: "sdf-shader",
|
||||
bits: [
|
||||
colorBit.colorBitGl,
|
||||
generateTextureBatchBit.generateTextureBatchBitGl(maxTextures),
|
||||
localUniformMSDFBit.localUniformMSDFBitGl,
|
||||
mSDFBit.mSDFBitGl,
|
||||
roundPixelsBit.roundPixelsBitGl
|
||||
]
|
||||
}));
|
||||
super({
|
||||
glProgram,
|
||||
gpuProgram,
|
||||
resources: {
|
||||
localUniforms: uniforms,
|
||||
batchSamplers: getBatchSamplersUniformGroup.getBatchSamplersUniformGroup(maxTextures)
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
exports.SdfShader = SdfShader;
|
||||
//# sourceMappingURL=SdfShader.js.map
|
1
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.js.map
generated
vendored
Normal file
1
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.js.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"SdfShader.js","sources":["../../../../src/scene/text/sdfShader/SdfShader.ts"],"sourcesContent":["import { Matrix } from '../../../maths/matrix/Matrix';\nimport { getMaxTexturesPerBatch } from '../../../rendering/batcher/gl/utils/maxRecommendedTextures';\nimport {\n compileHighShaderGlProgram,\n compileHighShaderGpuProgram\n} from '../../../rendering/high-shader/compileHighShaderToProgram';\nimport { colorBit, colorBitGl } from '../../../rendering/high-shader/shader-bits/colorBit';\nimport {\n generateTextureBatchBit,\n generateTextureBatchBitGl\n} from '../../../rendering/high-shader/shader-bits/generateTextureBatchBit';\nimport { roundPixelsBit, roundPixelsBitGl } from '../../../rendering/high-shader/shader-bits/roundPixelsBit';\nimport { getBatchSamplersUniformGroup } from '../../../rendering/renderers/gl/shader/getBatchSamplersUniformGroup';\nimport { Shader } from '../../../rendering/renderers/shared/shader/Shader';\nimport { UniformGroup } from '../../../rendering/renderers/shared/shader/UniformGroup';\nimport { localUniformMSDFBit, localUniformMSDFBitGl } from './shader-bits/localUniformMSDFBit';\nimport { mSDFBit, mSDFBitGl } from './shader-bits/mSDFBit';\n\nimport type { GlProgram } from '../../../rendering/renderers/gl/shader/GlProgram';\nimport type { GpuProgram } from '../../../rendering/renderers/gpu/shader/GpuProgram';\n\nlet gpuProgram: GpuProgram;\nlet glProgram: GlProgram;\n\nexport class SdfShader extends Shader\n{\n constructor()\n {\n const uniforms = new UniformGroup({\n uColor: { value: new Float32Array([1, 1, 1, 1]), type: 'vec4<f32>' },\n uTransformMatrix: { value: new Matrix(), type: 'mat3x3<f32>' },\n uDistance: { value: 4, type: 'f32' },\n uRound: { value: 0, type: 'f32' },\n });\n\n const maxTextures = getMaxTexturesPerBatch();\n\n gpuProgram ??= compileHighShaderGpuProgram({\n name: 'sdf-shader',\n bits: [\n colorBit,\n generateTextureBatchBit(maxTextures),\n localUniformMSDFBit,\n mSDFBit,\n roundPixelsBit\n ]\n });\n\n glProgram ??= compileHighShaderGlProgram({\n name: 'sdf-shader',\n bits: [\n colorBitGl,\n generateTextureBatchBitGl(maxTextures),\n localUniformMSDFBitGl,\n mSDFBitGl,\n roundPixelsBitGl,\n ]\n });\n\n super({\n glProgram,\n gpuProgram,\n resources: {\n localUniforms: uniforms,\n batchSamplers: getBatchSamplersUniformGroup(maxTextures),\n }\n });\n }\n}\n"],"names":["Shader","UniformGroup","Matrix","getMaxTexturesPerBatch","compileHighShaderGpuProgram","colorBit","generateTextureBatchBit","localUniformMSDFBit","mSDFBit","roundPixelsBit","compileHighShaderGlProgram","colorBitGl","generateTextureBatchBitGl","localUniformMSDFBitGl","mSDFBitGl","roundPixelsBitGl","getBatchSamplersUniformGroup"],"mappings":";;;;;;;;;;;;;;;AAqBA,IAAI,UAAA,CAAA;AACJ,IAAI,SAAA,CAAA;AAEG,MAAM,kBAAkBA,aAC/B,CAAA;AAAA,EACI,WACA,GAAA;AACI,IAAM,MAAA,QAAA,GAAW,IAAIC,yBAAa,CAAA;AAAA,MAC9B,MAAQ,EAAA,EAAE,KAAO,EAAA,IAAI,YAAa,CAAA,CAAC,CAAG,EAAA,CAAA,EAAG,CAAG,EAAA,CAAC,CAAC,CAAA,EAAG,MAAM,WAAY,EAAA;AAAA,MACnE,kBAAkB,EAAE,KAAA,EAAO,IAAIC,aAAO,EAAA,EAAG,MAAM,aAAc,EAAA;AAAA,MAC7D,SAAW,EAAA,EAAE,KAAO,EAAA,CAAA,EAAG,MAAM,KAAM,EAAA;AAAA,MACnC,MAAQ,EAAA,EAAE,KAAO,EAAA,CAAA,EAAG,MAAM,KAAM,EAAA;AAAA,KACnC,CAAA,CAAA;AAED,IAAA,MAAM,cAAcC,6CAAuB,EAAA,CAAA;AAE3C,IAAA,UAAA,KAAA,UAAA,GAAeC,sDAA4B,CAAA;AAAA,MACvC,IAAM,EAAA,YAAA;AAAA,MACN,IAAM,EAAA;AAAA,QACFC,iBAAA;AAAA,QACAC,gDAAwB,WAAW,CAAA;AAAA,QACnCC,uCAAA;AAAA,QACAC,eAAA;AAAA,QACAC,6BAAA;AAAA,OACJ;AAAA,KACH,CAAA,CAAA,CAAA;AAED,IAAA,SAAA,KAAA,SAAA,GAAcC,qDAA2B,CAAA;AAAA,MACrC,IAAM,EAAA,YAAA;AAAA,MACN,IAAM,EAAA;AAAA,QACFC,mBAAA;AAAA,QACAC,kDAA0B,WAAW,CAAA;AAAA,QACrCC,yCAAA;AAAA,QACAC,iBAAA;AAAA,QACAC,+BAAA;AAAA,OACJ;AAAA,KACH,CAAA,CAAA,CAAA;AAED,IAAM,KAAA,CAAA;AAAA,MACF,SAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAW,EAAA;AAAA,QACP,aAAe,EAAA,QAAA;AAAA,QACf,aAAA,EAAeC,0DAA6B,WAAW,CAAA;AAAA,OAC3D;AAAA,KACH,CAAA,CAAA;AAAA,GACL;AACJ;;;;"}
|
57
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.mjs
generated
vendored
Normal file
57
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.mjs
generated
vendored
Normal file
@@ -0,0 +1,57 @@
|
||||
import { Matrix } from '../../../maths/matrix/Matrix.mjs';
|
||||
import { getMaxTexturesPerBatch } from '../../../rendering/batcher/gl/utils/maxRecommendedTextures.mjs';
|
||||
import { compileHighShaderGpuProgram, compileHighShaderGlProgram } from '../../../rendering/high-shader/compileHighShaderToProgram.mjs';
|
||||
import { colorBit, colorBitGl } from '../../../rendering/high-shader/shader-bits/colorBit.mjs';
|
||||
import { generateTextureBatchBit, generateTextureBatchBitGl } from '../../../rendering/high-shader/shader-bits/generateTextureBatchBit.mjs';
|
||||
import { roundPixelsBit, roundPixelsBitGl } from '../../../rendering/high-shader/shader-bits/roundPixelsBit.mjs';
|
||||
import { getBatchSamplersUniformGroup } from '../../../rendering/renderers/gl/shader/getBatchSamplersUniformGroup.mjs';
|
||||
import { Shader } from '../../../rendering/renderers/shared/shader/Shader.mjs';
|
||||
import { UniformGroup } from '../../../rendering/renderers/shared/shader/UniformGroup.mjs';
|
||||
import { localUniformMSDFBit, localUniformMSDFBitGl } from './shader-bits/localUniformMSDFBit.mjs';
|
||||
import { mSDFBit, mSDFBitGl } from './shader-bits/mSDFBit.mjs';
|
||||
|
||||
"use strict";
|
||||
let gpuProgram;
|
||||
let glProgram;
|
||||
class SdfShader extends Shader {
|
||||
constructor() {
|
||||
const uniforms = new UniformGroup({
|
||||
uColor: { value: new Float32Array([1, 1, 1, 1]), type: "vec4<f32>" },
|
||||
uTransformMatrix: { value: new Matrix(), type: "mat3x3<f32>" },
|
||||
uDistance: { value: 4, type: "f32" },
|
||||
uRound: { value: 0, type: "f32" }
|
||||
});
|
||||
const maxTextures = getMaxTexturesPerBatch();
|
||||
gpuProgram ?? (gpuProgram = compileHighShaderGpuProgram({
|
||||
name: "sdf-shader",
|
||||
bits: [
|
||||
colorBit,
|
||||
generateTextureBatchBit(maxTextures),
|
||||
localUniformMSDFBit,
|
||||
mSDFBit,
|
||||
roundPixelsBit
|
||||
]
|
||||
}));
|
||||
glProgram ?? (glProgram = compileHighShaderGlProgram({
|
||||
name: "sdf-shader",
|
||||
bits: [
|
||||
colorBitGl,
|
||||
generateTextureBatchBitGl(maxTextures),
|
||||
localUniformMSDFBitGl,
|
||||
mSDFBitGl,
|
||||
roundPixelsBitGl
|
||||
]
|
||||
}));
|
||||
super({
|
||||
glProgram,
|
||||
gpuProgram,
|
||||
resources: {
|
||||
localUniforms: uniforms,
|
||||
batchSamplers: getBatchSamplersUniformGroup(maxTextures)
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export { SdfShader };
|
||||
//# sourceMappingURL=SdfShader.mjs.map
|
1
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.mjs.map
generated
vendored
Normal file
1
node_modules/pixi.js/lib/scene/text/sdfShader/SdfShader.mjs.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"SdfShader.mjs","sources":["../../../../src/scene/text/sdfShader/SdfShader.ts"],"sourcesContent":["import { Matrix } from '../../../maths/matrix/Matrix';\nimport { getMaxTexturesPerBatch } from '../../../rendering/batcher/gl/utils/maxRecommendedTextures';\nimport {\n compileHighShaderGlProgram,\n compileHighShaderGpuProgram\n} from '../../../rendering/high-shader/compileHighShaderToProgram';\nimport { colorBit, colorBitGl } from '../../../rendering/high-shader/shader-bits/colorBit';\nimport {\n generateTextureBatchBit,\n generateTextureBatchBitGl\n} from '../../../rendering/high-shader/shader-bits/generateTextureBatchBit';\nimport { roundPixelsBit, roundPixelsBitGl } from '../../../rendering/high-shader/shader-bits/roundPixelsBit';\nimport { getBatchSamplersUniformGroup } from '../../../rendering/renderers/gl/shader/getBatchSamplersUniformGroup';\nimport { Shader } from '../../../rendering/renderers/shared/shader/Shader';\nimport { UniformGroup } from '../../../rendering/renderers/shared/shader/UniformGroup';\nimport { localUniformMSDFBit, localUniformMSDFBitGl } from './shader-bits/localUniformMSDFBit';\nimport { mSDFBit, mSDFBitGl } from './shader-bits/mSDFBit';\n\nimport type { GlProgram } from '../../../rendering/renderers/gl/shader/GlProgram';\nimport type { GpuProgram } from '../../../rendering/renderers/gpu/shader/GpuProgram';\n\nlet gpuProgram: GpuProgram;\nlet glProgram: GlProgram;\n\nexport class SdfShader extends Shader\n{\n constructor()\n {\n const uniforms = new UniformGroup({\n uColor: { value: new Float32Array([1, 1, 1, 1]), type: 'vec4<f32>' },\n uTransformMatrix: { value: new Matrix(), type: 'mat3x3<f32>' },\n uDistance: { value: 4, type: 'f32' },\n uRound: { value: 0, type: 'f32' },\n });\n\n const maxTextures = getMaxTexturesPerBatch();\n\n gpuProgram ??= compileHighShaderGpuProgram({\n name: 'sdf-shader',\n bits: [\n colorBit,\n generateTextureBatchBit(maxTextures),\n localUniformMSDFBit,\n mSDFBit,\n roundPixelsBit\n ]\n });\n\n glProgram ??= compileHighShaderGlProgram({\n name: 'sdf-shader',\n bits: [\n colorBitGl,\n generateTextureBatchBitGl(maxTextures),\n localUniformMSDFBitGl,\n mSDFBitGl,\n roundPixelsBitGl,\n ]\n });\n\n super({\n glProgram,\n gpuProgram,\n resources: {\n localUniforms: uniforms,\n batchSamplers: getBatchSamplersUniformGroup(maxTextures),\n }\n });\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAqBA,IAAI,UAAA,CAAA;AACJ,IAAI,SAAA,CAAA;AAEG,MAAM,kBAAkB,MAC/B,CAAA;AAAA,EACI,WACA,GAAA;AACI,IAAM,MAAA,QAAA,GAAW,IAAI,YAAa,CAAA;AAAA,MAC9B,MAAQ,EAAA,EAAE,KAAO,EAAA,IAAI,YAAa,CAAA,CAAC,CAAG,EAAA,CAAA,EAAG,CAAG,EAAA,CAAC,CAAC,CAAA,EAAG,MAAM,WAAY,EAAA;AAAA,MACnE,kBAAkB,EAAE,KAAA,EAAO,IAAI,MAAO,EAAA,EAAG,MAAM,aAAc,EAAA;AAAA,MAC7D,SAAW,EAAA,EAAE,KAAO,EAAA,CAAA,EAAG,MAAM,KAAM,EAAA;AAAA,MACnC,MAAQ,EAAA,EAAE,KAAO,EAAA,CAAA,EAAG,MAAM,KAAM,EAAA;AAAA,KACnC,CAAA,CAAA;AAED,IAAA,MAAM,cAAc,sBAAuB,EAAA,CAAA;AAE3C,IAAA,UAAA,KAAA,UAAA,GAAe,2BAA4B,CAAA;AAAA,MACvC,IAAM,EAAA,YAAA;AAAA,MACN,IAAM,EAAA;AAAA,QACF,QAAA;AAAA,QACA,wBAAwB,WAAW,CAAA;AAAA,QACnC,mBAAA;AAAA,QACA,OAAA;AAAA,QACA,cAAA;AAAA,OACJ;AAAA,KACH,CAAA,CAAA,CAAA;AAED,IAAA,SAAA,KAAA,SAAA,GAAc,0BAA2B,CAAA;AAAA,MACrC,IAAM,EAAA,YAAA;AAAA,MACN,IAAM,EAAA;AAAA,QACF,UAAA;AAAA,QACA,0BAA0B,WAAW,CAAA;AAAA,QACrC,qBAAA;AAAA,QACA,SAAA;AAAA,QACA,gBAAA;AAAA,OACJ;AAAA,KACH,CAAA,CAAA,CAAA;AAED,IAAM,KAAA,CAAA;AAAA,MACF,SAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAW,EAAA;AAAA,QACP,aAAe,EAAA,QAAA;AAAA,QACf,aAAA,EAAe,6BAA6B,WAAW,CAAA;AAAA,OAC3D;AAAA,KACH,CAAA,CAAA;AAAA,GACL;AACJ;;;;"}
|
24
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.d.ts
generated
vendored
Normal file
24
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.d.ts
generated
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
export declare const localUniformMSDFBit: {
|
||||
name: string;
|
||||
vertex: {
|
||||
header: string;
|
||||
main: string;
|
||||
end: string;
|
||||
};
|
||||
fragment: {
|
||||
header: string;
|
||||
main: string;
|
||||
};
|
||||
};
|
||||
export declare const localUniformMSDFBitGl: {
|
||||
name: string;
|
||||
vertex: {
|
||||
header: string;
|
||||
main: string;
|
||||
end: string;
|
||||
};
|
||||
fragment: {
|
||||
header: string;
|
||||
main: string;
|
||||
};
|
||||
};
|
104
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.js
generated
vendored
Normal file
104
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.js
generated
vendored
Normal file
@@ -0,0 +1,104 @@
|
||||
'use strict';
|
||||
|
||||
"use strict";
|
||||
const localUniformMSDFBit = {
|
||||
name: "local-uniform-msdf-bit",
|
||||
vertex: {
|
||||
header: (
|
||||
/* wgsl */
|
||||
`
|
||||
struct LocalUniforms {
|
||||
uColor:vec4<f32>,
|
||||
uTransformMatrix:mat3x3<f32>,
|
||||
uDistance: f32,
|
||||
uRound:f32,
|
||||
}
|
||||
|
||||
@group(2) @binding(0) var<uniform> localUniforms : LocalUniforms;
|
||||
`
|
||||
),
|
||||
main: (
|
||||
/* wgsl */
|
||||
`
|
||||
vColor *= localUniforms.uColor;
|
||||
modelMatrix *= localUniforms.uTransformMatrix;
|
||||
`
|
||||
),
|
||||
end: (
|
||||
/* wgsl */
|
||||
`
|
||||
if(localUniforms.uRound == 1)
|
||||
{
|
||||
vPosition = vec4(roundPixels(vPosition.xy, globalUniforms.uResolution), vPosition.zw);
|
||||
}
|
||||
`
|
||||
)
|
||||
},
|
||||
fragment: {
|
||||
header: (
|
||||
/* wgsl */
|
||||
`
|
||||
struct LocalUniforms {
|
||||
uColor:vec4<f32>,
|
||||
uTransformMatrix:mat3x3<f32>,
|
||||
uDistance: f32
|
||||
}
|
||||
|
||||
@group(2) @binding(0) var<uniform> localUniforms : LocalUniforms;
|
||||
`
|
||||
),
|
||||
main: (
|
||||
/* wgsl */
|
||||
`
|
||||
outColor = vec4<f32>(calculateMSDFAlpha(outColor, localUniforms.uColor, localUniforms.uDistance));
|
||||
`
|
||||
)
|
||||
}
|
||||
};
|
||||
const localUniformMSDFBitGl = {
|
||||
name: "local-uniform-msdf-bit",
|
||||
vertex: {
|
||||
header: (
|
||||
/* glsl */
|
||||
`
|
||||
uniform mat3 uTransformMatrix;
|
||||
uniform vec4 uColor;
|
||||
uniform float uRound;
|
||||
`
|
||||
),
|
||||
main: (
|
||||
/* glsl */
|
||||
`
|
||||
vColor *= uColor;
|
||||
modelMatrix *= uTransformMatrix;
|
||||
`
|
||||
),
|
||||
end: (
|
||||
/* glsl */
|
||||
`
|
||||
if(uRound == 1.)
|
||||
{
|
||||
gl_Position.xy = roundPixels(gl_Position.xy, uResolution);
|
||||
}
|
||||
`
|
||||
)
|
||||
},
|
||||
fragment: {
|
||||
header: (
|
||||
/* glsl */
|
||||
`
|
||||
uniform float uDistance;
|
||||
`
|
||||
),
|
||||
main: (
|
||||
/* glsl */
|
||||
`
|
||||
outColor = vec4(calculateMSDFAlpha(outColor, vColor, uDistance));
|
||||
`
|
||||
)
|
||||
}
|
||||
};
|
||||
|
||||
exports.localUniformMSDFBit = localUniformMSDFBit;
|
||||
exports.localUniformMSDFBitGl = localUniformMSDFBitGl;
|
||||
//# sourceMappingURL=localUniformMSDFBit.js.map
|
1
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.js.map
generated
vendored
Normal file
1
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.js.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"localUniformMSDFBit.js","sources":["../../../../../src/scene/text/sdfShader/shader-bits/localUniformMSDFBit.ts"],"sourcesContent":["// TODO eventually we should not use this bit, but instead use the localUniformBit\n// have the MSDF bit be merged in with the localUniformBit\n\nexport const localUniformMSDFBit = {\n name: 'local-uniform-msdf-bit',\n vertex: {\n header: /* wgsl */`\n struct LocalUniforms {\n uColor:vec4<f32>,\n uTransformMatrix:mat3x3<f32>,\n uDistance: f32,\n uRound:f32,\n }\n\n @group(2) @binding(0) var<uniform> localUniforms : LocalUniforms;\n `,\n main: /* wgsl */`\n vColor *= localUniforms.uColor;\n modelMatrix *= localUniforms.uTransformMatrix;\n `,\n end: /* wgsl */`\n if(localUniforms.uRound == 1)\n {\n vPosition = vec4(roundPixels(vPosition.xy, globalUniforms.uResolution), vPosition.zw);\n }\n `\n },\n fragment: {\n header: /* wgsl */`\n struct LocalUniforms {\n uColor:vec4<f32>,\n uTransformMatrix:mat3x3<f32>,\n uDistance: f32\n }\n\n @group(2) @binding(0) var<uniform> localUniforms : LocalUniforms;\n `,\n main: /* wgsl */` \n outColor = vec4<f32>(calculateMSDFAlpha(outColor, localUniforms.uColor, localUniforms.uDistance));\n `\n\n }\n};\n\nexport const localUniformMSDFBitGl = {\n name: 'local-uniform-msdf-bit',\n vertex: {\n header: /* glsl */`\n uniform mat3 uTransformMatrix;\n uniform vec4 uColor;\n uniform float uRound;\n `,\n main: /* glsl */`\n vColor *= uColor;\n modelMatrix *= uTransformMatrix;\n `,\n end: /* glsl */`\n if(uRound == 1.)\n {\n gl_Position.xy = roundPixels(gl_Position.xy, uResolution);\n }\n `\n },\n fragment: {\n header: /* glsl */`\n uniform float uDistance;\n `,\n main: /* glsl */` \n outColor = vec4(calculateMSDFAlpha(outColor, vColor, uDistance));\n `\n\n }\n};\n"],"names":[],"mappings":";;;AAGO,MAAM,mBAAsB,GAAA;AAAA,EAC/B,IAAM,EAAA,wBAAA;AAAA,EACN,MAAQ,EAAA;AAAA,IACJ,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,IAUlB,IAAA;AAAA;AAAA,MAAgB,CAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,IAIhB,GAAA;AAAA;AAAA,MAAe,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GAMnB;AAAA,EACA,QAAU,EAAA;AAAA,IACN,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAAA,CAAA;AAAA,KAAA;AAAA,IASlB,IAAA;AAAA;AAAA,MAAgB,CAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GAIpB;AACJ,EAAA;AAEO,MAAM,qBAAwB,GAAA;AAAA,EACjC,IAAM,EAAA,wBAAA;AAAA,EACN,MAAQ,EAAA;AAAA,IACJ,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,IAKlB,IAAA;AAAA;AAAA,MAAgB,CAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,IAIhB,GAAA;AAAA;AAAA,MAAe,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GAMnB;AAAA,EACA,QAAU,EAAA;AAAA,IACN,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA,SAAA,CAAA;AAAA,KAAA;AAAA,IAGlB,IAAA;AAAA;AAAA,MAAgB,CAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GAIpB;AACJ;;;;;"}
|
101
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.mjs
generated
vendored
Normal file
101
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.mjs
generated
vendored
Normal file
@@ -0,0 +1,101 @@
|
||||
"use strict";
|
||||
const localUniformMSDFBit = {
|
||||
name: "local-uniform-msdf-bit",
|
||||
vertex: {
|
||||
header: (
|
||||
/* wgsl */
|
||||
`
|
||||
struct LocalUniforms {
|
||||
uColor:vec4<f32>,
|
||||
uTransformMatrix:mat3x3<f32>,
|
||||
uDistance: f32,
|
||||
uRound:f32,
|
||||
}
|
||||
|
||||
@group(2) @binding(0) var<uniform> localUniforms : LocalUniforms;
|
||||
`
|
||||
),
|
||||
main: (
|
||||
/* wgsl */
|
||||
`
|
||||
vColor *= localUniforms.uColor;
|
||||
modelMatrix *= localUniforms.uTransformMatrix;
|
||||
`
|
||||
),
|
||||
end: (
|
||||
/* wgsl */
|
||||
`
|
||||
if(localUniforms.uRound == 1)
|
||||
{
|
||||
vPosition = vec4(roundPixels(vPosition.xy, globalUniforms.uResolution), vPosition.zw);
|
||||
}
|
||||
`
|
||||
)
|
||||
},
|
||||
fragment: {
|
||||
header: (
|
||||
/* wgsl */
|
||||
`
|
||||
struct LocalUniforms {
|
||||
uColor:vec4<f32>,
|
||||
uTransformMatrix:mat3x3<f32>,
|
||||
uDistance: f32
|
||||
}
|
||||
|
||||
@group(2) @binding(0) var<uniform> localUniforms : LocalUniforms;
|
||||
`
|
||||
),
|
||||
main: (
|
||||
/* wgsl */
|
||||
`
|
||||
outColor = vec4<f32>(calculateMSDFAlpha(outColor, localUniforms.uColor, localUniforms.uDistance));
|
||||
`
|
||||
)
|
||||
}
|
||||
};
|
||||
const localUniformMSDFBitGl = {
|
||||
name: "local-uniform-msdf-bit",
|
||||
vertex: {
|
||||
header: (
|
||||
/* glsl */
|
||||
`
|
||||
uniform mat3 uTransformMatrix;
|
||||
uniform vec4 uColor;
|
||||
uniform float uRound;
|
||||
`
|
||||
),
|
||||
main: (
|
||||
/* glsl */
|
||||
`
|
||||
vColor *= uColor;
|
||||
modelMatrix *= uTransformMatrix;
|
||||
`
|
||||
),
|
||||
end: (
|
||||
/* glsl */
|
||||
`
|
||||
if(uRound == 1.)
|
||||
{
|
||||
gl_Position.xy = roundPixels(gl_Position.xy, uResolution);
|
||||
}
|
||||
`
|
||||
)
|
||||
},
|
||||
fragment: {
|
||||
header: (
|
||||
/* glsl */
|
||||
`
|
||||
uniform float uDistance;
|
||||
`
|
||||
),
|
||||
main: (
|
||||
/* glsl */
|
||||
`
|
||||
outColor = vec4(calculateMSDFAlpha(outColor, vColor, uDistance));
|
||||
`
|
||||
)
|
||||
}
|
||||
};
|
||||
|
||||
export { localUniformMSDFBit, localUniformMSDFBitGl };
|
||||
//# sourceMappingURL=localUniformMSDFBit.mjs.map
|
1
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.mjs.map
generated
vendored
Normal file
1
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/localUniformMSDFBit.mjs.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"localUniformMSDFBit.mjs","sources":["../../../../../src/scene/text/sdfShader/shader-bits/localUniformMSDFBit.ts"],"sourcesContent":["// TODO eventually we should not use this bit, but instead use the localUniformBit\n// have the MSDF bit be merged in with the localUniformBit\n\nexport const localUniformMSDFBit = {\n name: 'local-uniform-msdf-bit',\n vertex: {\n header: /* wgsl */`\n struct LocalUniforms {\n uColor:vec4<f32>,\n uTransformMatrix:mat3x3<f32>,\n uDistance: f32,\n uRound:f32,\n }\n\n @group(2) @binding(0) var<uniform> localUniforms : LocalUniforms;\n `,\n main: /* wgsl */`\n vColor *= localUniforms.uColor;\n modelMatrix *= localUniforms.uTransformMatrix;\n `,\n end: /* wgsl */`\n if(localUniforms.uRound == 1)\n {\n vPosition = vec4(roundPixels(vPosition.xy, globalUniforms.uResolution), vPosition.zw);\n }\n `\n },\n fragment: {\n header: /* wgsl */`\n struct LocalUniforms {\n uColor:vec4<f32>,\n uTransformMatrix:mat3x3<f32>,\n uDistance: f32\n }\n\n @group(2) @binding(0) var<uniform> localUniforms : LocalUniforms;\n `,\n main: /* wgsl */` \n outColor = vec4<f32>(calculateMSDFAlpha(outColor, localUniforms.uColor, localUniforms.uDistance));\n `\n\n }\n};\n\nexport const localUniformMSDFBitGl = {\n name: 'local-uniform-msdf-bit',\n vertex: {\n header: /* glsl */`\n uniform mat3 uTransformMatrix;\n uniform vec4 uColor;\n uniform float uRound;\n `,\n main: /* glsl */`\n vColor *= uColor;\n modelMatrix *= uTransformMatrix;\n `,\n end: /* glsl */`\n if(uRound == 1.)\n {\n gl_Position.xy = roundPixels(gl_Position.xy, uResolution);\n }\n `\n },\n fragment: {\n header: /* glsl */`\n uniform float uDistance;\n `,\n main: /* glsl */` \n outColor = vec4(calculateMSDFAlpha(outColor, vColor, uDistance));\n `\n\n }\n};\n"],"names":[],"mappings":";AAGO,MAAM,mBAAsB,GAAA;AAAA,EAC/B,IAAM,EAAA,wBAAA;AAAA,EACN,MAAQ,EAAA;AAAA,IACJ,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,IAUlB,IAAA;AAAA;AAAA,MAAgB,CAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,IAIhB,GAAA;AAAA;AAAA,MAAe,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GAMnB;AAAA,EACA,QAAU,EAAA;AAAA,IACN,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAAA,CAAA;AAAA,KAAA;AAAA,IASlB,IAAA;AAAA;AAAA,MAAgB,CAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GAIpB;AACJ,EAAA;AAEO,MAAM,qBAAwB,GAAA;AAAA,EACjC,IAAM,EAAA,wBAAA;AAAA,EACN,MAAQ,EAAA;AAAA,IACJ,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,IAKlB,IAAA;AAAA;AAAA,MAAgB,CAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,IAIhB,GAAA;AAAA;AAAA,MAAe,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GAMnB;AAAA,EACA,QAAU,EAAA;AAAA,IACN,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA,SAAA,CAAA;AAAA,KAAA;AAAA,IAGlB,IAAA;AAAA;AAAA,MAAgB,CAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GAIpB;AACJ;;;;"}
|
12
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.d.ts
generated
vendored
Normal file
12
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.d.ts
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
export declare const mSDFBit: {
|
||||
name: string;
|
||||
fragment: {
|
||||
header: string;
|
||||
};
|
||||
};
|
||||
export declare const mSDFBitGl: {
|
||||
name: string;
|
||||
fragment: {
|
||||
header: string;
|
||||
};
|
||||
};
|
79
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.js
generated
vendored
Normal file
79
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.js
generated
vendored
Normal file
@@ -0,0 +1,79 @@
|
||||
'use strict';
|
||||
|
||||
"use strict";
|
||||
const mSDFBit = {
|
||||
name: "msdf-bit",
|
||||
fragment: {
|
||||
header: (
|
||||
/* wgsl */
|
||||
`
|
||||
fn calculateMSDFAlpha(msdfColor:vec4<f32>, shapeColor:vec4<f32>, distance:f32) -> f32 {
|
||||
|
||||
// MSDF
|
||||
var median = msdfColor.r + msdfColor.g + msdfColor.b -
|
||||
min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -
|
||||
max(msdfColor.r, max(msdfColor.g, msdfColor.b));
|
||||
|
||||
// SDF
|
||||
median = min(median, msdfColor.a);
|
||||
|
||||
var screenPxDistance = distance * (median - 0.5);
|
||||
var alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);
|
||||
if (median < 0.01) {
|
||||
alpha = 0.0;
|
||||
} else if (median > 0.99) {
|
||||
alpha = 1.0;
|
||||
}
|
||||
|
||||
// Gamma correction for coverage-like alpha
|
||||
var luma: f32 = dot(shapeColor.rgb, vec3<f32>(0.299, 0.587, 0.114));
|
||||
var gamma: f32 = mix(1.0, 1.0 / 2.2, luma);
|
||||
var coverage: f32 = pow(shapeColor.a * alpha, gamma);
|
||||
|
||||
return coverage;
|
||||
|
||||
}
|
||||
`
|
||||
)
|
||||
}
|
||||
};
|
||||
const mSDFBitGl = {
|
||||
name: "msdf-bit",
|
||||
fragment: {
|
||||
header: (
|
||||
/* glsl */
|
||||
`
|
||||
float calculateMSDFAlpha(vec4 msdfColor, vec4 shapeColor, float distance) {
|
||||
|
||||
// MSDF
|
||||
float median = msdfColor.r + msdfColor.g + msdfColor.b -
|
||||
min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -
|
||||
max(msdfColor.r, max(msdfColor.g, msdfColor.b));
|
||||
|
||||
// SDF
|
||||
median = min(median, msdfColor.a);
|
||||
|
||||
float screenPxDistance = distance * (median - 0.5);
|
||||
float alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);
|
||||
|
||||
if (median < 0.01) {
|
||||
alpha = 0.0;
|
||||
} else if (median > 0.99) {
|
||||
alpha = 1.0;
|
||||
}
|
||||
|
||||
// Gamma correction for coverage-like alpha
|
||||
float luma = dot(shapeColor.rgb, vec3(0.299, 0.587, 0.114));
|
||||
float gamma = mix(1.0, 1.0 / 2.2, luma);
|
||||
float coverage = pow(shapeColor.a * alpha, gamma);
|
||||
|
||||
return coverage;
|
||||
}
|
||||
`
|
||||
)
|
||||
}
|
||||
};
|
||||
|
||||
exports.mSDFBit = mSDFBit;
|
||||
exports.mSDFBitGl = mSDFBitGl;
|
||||
//# sourceMappingURL=mSDFBit.js.map
|
1
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.js.map
generated
vendored
Normal file
1
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.js.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"mSDFBit.js","sources":["../../../../../src/scene/text/sdfShader/shader-bits/mSDFBit.ts"],"sourcesContent":["export const mSDFBit = {\n name: 'msdf-bit',\n fragment: {\n header: /* wgsl */`\n fn calculateMSDFAlpha(msdfColor:vec4<f32>, shapeColor:vec4<f32>, distance:f32) -> f32 {\n \n // MSDF\n var median = msdfColor.r + msdfColor.g + msdfColor.b -\n min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -\n max(msdfColor.r, max(msdfColor.g, msdfColor.b));\n \n // SDF\n median = min(median, msdfColor.a);\n\n var screenPxDistance = distance * (median - 0.5);\n var alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);\n if (median < 0.01) {\n alpha = 0.0;\n } else if (median > 0.99) {\n alpha = 1.0;\n }\n\n // Gamma correction for coverage-like alpha\n var luma: f32 = dot(shapeColor.rgb, vec3<f32>(0.299, 0.587, 0.114));\n var gamma: f32 = mix(1.0, 1.0 / 2.2, luma);\n var coverage: f32 = pow(shapeColor.a * alpha, gamma);\n\n return coverage;\n \n }\n `,\n }\n\n};\n\nexport const mSDFBitGl = {\n name: 'msdf-bit',\n fragment: {\n header: /* glsl */`\n float calculateMSDFAlpha(vec4 msdfColor, vec4 shapeColor, float distance) {\n \n // MSDF\n float median = msdfColor.r + msdfColor.g + msdfColor.b -\n min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -\n max(msdfColor.r, max(msdfColor.g, msdfColor.b));\n \n // SDF\n median = min(median, msdfColor.a);\n \n float screenPxDistance = distance * (median - 0.5);\n float alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);\n \n if (median < 0.01) {\n alpha = 0.0;\n } else if (median > 0.99) {\n alpha = 1.0;\n }\n\n // Gamma correction for coverage-like alpha\n float luma = dot(shapeColor.rgb, vec3(0.299, 0.587, 0.114));\n float gamma = mix(1.0, 1.0 / 2.2, luma);\n float coverage = pow(shapeColor.a * alpha, gamma); \n \n return coverage;\n }\n `,\n }\n\n};\n"],"names":[],"mappings":";;;AAAO,MAAM,OAAU,GAAA;AAAA,EACnB,IAAM,EAAA,UAAA;AAAA,EACN,QAAU,EAAA;AAAA,IACN,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GA4BtB;AAEJ,EAAA;AAEO,MAAM,SAAY,GAAA;AAAA,EACrB,IAAM,EAAA,UAAA;AAAA,EACN,QAAU,EAAA;AAAA,IACN,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GA4BtB;AAEJ;;;;;"}
|
76
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.mjs
generated
vendored
Normal file
76
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.mjs
generated
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
"use strict";
|
||||
const mSDFBit = {
|
||||
name: "msdf-bit",
|
||||
fragment: {
|
||||
header: (
|
||||
/* wgsl */
|
||||
`
|
||||
fn calculateMSDFAlpha(msdfColor:vec4<f32>, shapeColor:vec4<f32>, distance:f32) -> f32 {
|
||||
|
||||
// MSDF
|
||||
var median = msdfColor.r + msdfColor.g + msdfColor.b -
|
||||
min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -
|
||||
max(msdfColor.r, max(msdfColor.g, msdfColor.b));
|
||||
|
||||
// SDF
|
||||
median = min(median, msdfColor.a);
|
||||
|
||||
var screenPxDistance = distance * (median - 0.5);
|
||||
var alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);
|
||||
if (median < 0.01) {
|
||||
alpha = 0.0;
|
||||
} else if (median > 0.99) {
|
||||
alpha = 1.0;
|
||||
}
|
||||
|
||||
// Gamma correction for coverage-like alpha
|
||||
var luma: f32 = dot(shapeColor.rgb, vec3<f32>(0.299, 0.587, 0.114));
|
||||
var gamma: f32 = mix(1.0, 1.0 / 2.2, luma);
|
||||
var coverage: f32 = pow(shapeColor.a * alpha, gamma);
|
||||
|
||||
return coverage;
|
||||
|
||||
}
|
||||
`
|
||||
)
|
||||
}
|
||||
};
|
||||
const mSDFBitGl = {
|
||||
name: "msdf-bit",
|
||||
fragment: {
|
||||
header: (
|
||||
/* glsl */
|
||||
`
|
||||
float calculateMSDFAlpha(vec4 msdfColor, vec4 shapeColor, float distance) {
|
||||
|
||||
// MSDF
|
||||
float median = msdfColor.r + msdfColor.g + msdfColor.b -
|
||||
min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -
|
||||
max(msdfColor.r, max(msdfColor.g, msdfColor.b));
|
||||
|
||||
// SDF
|
||||
median = min(median, msdfColor.a);
|
||||
|
||||
float screenPxDistance = distance * (median - 0.5);
|
||||
float alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);
|
||||
|
||||
if (median < 0.01) {
|
||||
alpha = 0.0;
|
||||
} else if (median > 0.99) {
|
||||
alpha = 1.0;
|
||||
}
|
||||
|
||||
// Gamma correction for coverage-like alpha
|
||||
float luma = dot(shapeColor.rgb, vec3(0.299, 0.587, 0.114));
|
||||
float gamma = mix(1.0, 1.0 / 2.2, luma);
|
||||
float coverage = pow(shapeColor.a * alpha, gamma);
|
||||
|
||||
return coverage;
|
||||
}
|
||||
`
|
||||
)
|
||||
}
|
||||
};
|
||||
|
||||
export { mSDFBit, mSDFBitGl };
|
||||
//# sourceMappingURL=mSDFBit.mjs.map
|
1
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.mjs.map
generated
vendored
Normal file
1
node_modules/pixi.js/lib/scene/text/sdfShader/shader-bits/mSDFBit.mjs.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"mSDFBit.mjs","sources":["../../../../../src/scene/text/sdfShader/shader-bits/mSDFBit.ts"],"sourcesContent":["export const mSDFBit = {\n name: 'msdf-bit',\n fragment: {\n header: /* wgsl */`\n fn calculateMSDFAlpha(msdfColor:vec4<f32>, shapeColor:vec4<f32>, distance:f32) -> f32 {\n \n // MSDF\n var median = msdfColor.r + msdfColor.g + msdfColor.b -\n min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -\n max(msdfColor.r, max(msdfColor.g, msdfColor.b));\n \n // SDF\n median = min(median, msdfColor.a);\n\n var screenPxDistance = distance * (median - 0.5);\n var alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);\n if (median < 0.01) {\n alpha = 0.0;\n } else if (median > 0.99) {\n alpha = 1.0;\n }\n\n // Gamma correction for coverage-like alpha\n var luma: f32 = dot(shapeColor.rgb, vec3<f32>(0.299, 0.587, 0.114));\n var gamma: f32 = mix(1.0, 1.0 / 2.2, luma);\n var coverage: f32 = pow(shapeColor.a * alpha, gamma);\n\n return coverage;\n \n }\n `,\n }\n\n};\n\nexport const mSDFBitGl = {\n name: 'msdf-bit',\n fragment: {\n header: /* glsl */`\n float calculateMSDFAlpha(vec4 msdfColor, vec4 shapeColor, float distance) {\n \n // MSDF\n float median = msdfColor.r + msdfColor.g + msdfColor.b -\n min(msdfColor.r, min(msdfColor.g, msdfColor.b)) -\n max(msdfColor.r, max(msdfColor.g, msdfColor.b));\n \n // SDF\n median = min(median, msdfColor.a);\n \n float screenPxDistance = distance * (median - 0.5);\n float alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);\n \n if (median < 0.01) {\n alpha = 0.0;\n } else if (median > 0.99) {\n alpha = 1.0;\n }\n\n // Gamma correction for coverage-like alpha\n float luma = dot(shapeColor.rgb, vec3(0.299, 0.587, 0.114));\n float gamma = mix(1.0, 1.0 / 2.2, luma);\n float coverage = pow(shapeColor.a * alpha, gamma); \n \n return coverage;\n }\n `,\n }\n\n};\n"],"names":[],"mappings":";AAAO,MAAM,OAAU,GAAA;AAAA,EACnB,IAAM,EAAA,UAAA;AAAA,EACN,QAAU,EAAA;AAAA,IACN,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GA4BtB;AAEJ,EAAA;AAEO,MAAM,SAAY,GAAA;AAAA,EACrB,IAAM,EAAA,UAAA;AAAA,EACN,QAAU,EAAA;AAAA,IACN,MAAA;AAAA;AAAA,MAAkB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,CAAA;AAAA,KAAA;AAAA,GA4BtB;AAEJ;;;;"}
|
Reference in New Issue
Block a user