@flighthq/effects-gl 0.3.0-next.906.07cea63 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/contract.d.ts +3 -2
- package/dist/contract.d.ts.map +1 -1
- package/dist/contract.js +3 -2
- package/dist/contract.js.map +1 -1
- package/dist/enableGlRenderEffectGuards.d.ts +5 -0
- package/dist/enableGlRenderEffectGuards.d.ts.map +1 -0
- package/dist/enableGlRenderEffectGuards.js +43 -0
- package/dist/enableGlRenderEffectGuards.js.map +1 -0
- package/dist/glBevelEffect.d.ts +1 -0
- package/dist/glBevelEffect.d.ts.map +1 -1
- package/dist/glBevelEffect.js +7 -3
- package/dist/glBevelEffect.js.map +1 -1
- package/dist/glBlendEffect.d.ts +2 -0
- package/dist/glBlendEffect.d.ts.map +1 -1
- package/dist/glBlendEffect.js +13 -2
- package/dist/glBlendEffect.js.map +1 -1
- package/dist/glBloomEffect.d.ts +1 -0
- package/dist/glBloomEffect.d.ts.map +1 -1
- package/dist/glBloomEffect.js +4 -0
- package/dist/glBloomEffect.js.map +1 -1
- package/dist/glBlurEffect.d.ts +7 -1
- package/dist/glBlurEffect.d.ts.map +1 -1
- package/dist/glBlurEffect.js +34 -6
- package/dist/glBlurEffect.js.map +1 -1
- package/dist/glBokehDepthOfFieldEffect.d.ts +1 -0
- package/dist/glBokehDepthOfFieldEffect.d.ts.map +1 -1
- package/dist/glBokehDepthOfFieldEffect.js +4 -0
- package/dist/glBokehDepthOfFieldEffect.js.map +1 -1
- package/dist/glCameraMotionBlurEffect.d.ts +1 -0
- package/dist/glCameraMotionBlurEffect.d.ts.map +1 -1
- package/dist/glCameraMotionBlurEffect.js +4 -0
- package/dist/glCameraMotionBlurEffect.js.map +1 -1
- package/dist/glChromaticAberrationEffect.d.ts +1 -0
- package/dist/glChromaticAberrationEffect.d.ts.map +1 -1
- package/dist/glChromaticAberrationEffect.js +4 -0
- package/dist/glChromaticAberrationEffect.js.map +1 -1
- package/dist/glCompositeEffect.d.ts +1 -0
- package/dist/glCompositeEffect.d.ts.map +1 -1
- package/dist/glCompositeEffect.js +4 -0
- package/dist/glCompositeEffect.js.map +1 -1
- package/dist/glContactShadowsEffect.d.ts +5 -0
- package/dist/glContactShadowsEffect.d.ts.map +1 -0
- package/dist/glContactShadowsEffect.js +20 -0
- package/dist/glContactShadowsEffect.js.map +1 -0
- package/dist/glConvolutionEffect.d.ts +1 -0
- package/dist/glConvolutionEffect.d.ts.map +1 -1
- package/dist/glConvolutionEffect.js +4 -0
- package/dist/glConvolutionEffect.js.map +1 -1
- package/dist/glCrtEffect.d.ts +1 -0
- package/dist/glCrtEffect.d.ts.map +1 -1
- package/dist/glCrtEffect.js +4 -0
- package/dist/glCrtEffect.js.map +1 -1
- package/dist/glCustomShaderEffect.d.ts +1 -0
- package/dist/glCustomShaderEffect.d.ts.map +1 -1
- package/dist/glCustomShaderEffect.js +4 -0
- package/dist/glCustomShaderEffect.js.map +1 -1
- package/dist/glDirectionalBlurEffect.d.ts +1 -0
- package/dist/glDirectionalBlurEffect.d.ts.map +1 -1
- package/dist/glDirectionalBlurEffect.js +4 -0
- package/dist/glDirectionalBlurEffect.js.map +1 -1
- package/dist/glDisplacementEffect.d.ts +1 -0
- package/dist/glDisplacementEffect.d.ts.map +1 -1
- package/dist/glDisplacementEffect.js +4 -0
- package/dist/glDisplacementEffect.js.map +1 -1
- package/dist/glDitherEffect.d.ts +1 -0
- package/dist/glDitherEffect.d.ts.map +1 -1
- package/dist/glDitherEffect.js +4 -0
- package/dist/glDitherEffect.js.map +1 -1
- package/dist/glDropShadowEffect.d.ts +1 -0
- package/dist/glDropShadowEffect.d.ts.map +1 -1
- package/dist/glDropShadowEffect.js +4 -0
- package/dist/glDropShadowEffect.js.map +1 -1
- package/dist/glEffectBlitShader.js +6 -6
- package/dist/glEffectBlitShader.js.map +1 -1
- package/dist/glEffectBoxBlur.js +2 -2
- package/dist/glEffectBoxBlur.js.map +1 -1
- package/dist/glEffectProgramCache.js +5 -5
- package/dist/glEffectProgramCache.js.map +1 -1
- package/dist/glEffectTintShader.js +4 -4
- package/dist/glEffectTintShader.js.map +1 -1
- package/dist/glFilmGrainEffect.d.ts +1 -0
- package/dist/glFilmGrainEffect.d.ts.map +1 -1
- package/dist/glFilmGrainEffect.js +4 -0
- package/dist/glFilmGrainEffect.js.map +1 -1
- package/dist/glFxaaEffect.d.ts +1 -0
- package/dist/glFxaaEffect.d.ts.map +1 -1
- package/dist/glFxaaEffect.js +4 -0
- package/dist/glFxaaEffect.js.map +1 -1
- package/dist/glGlitchEffect.d.ts +1 -0
- package/dist/glGlitchEffect.d.ts.map +1 -1
- package/dist/glGlitchEffect.js +4 -0
- package/dist/glGlitchEffect.js.map +1 -1
- package/dist/glGodRaysEffect.d.ts +1 -0
- package/dist/glGodRaysEffect.d.ts.map +1 -1
- package/dist/glGodRaysEffect.js +4 -0
- package/dist/glGodRaysEffect.js.map +1 -1
- package/dist/glGradientBevelEffect.d.ts +1 -0
- package/dist/glGradientBevelEffect.d.ts.map +1 -1
- package/dist/glGradientBevelEffect.js +8 -4
- package/dist/glGradientBevelEffect.js.map +1 -1
- package/dist/glGradientGlowEffect.d.ts +1 -0
- package/dist/glGradientGlowEffect.d.ts.map +1 -1
- package/dist/glGradientGlowEffect.js +6 -2
- package/dist/glGradientGlowEffect.js.map +1 -1
- package/dist/glHalftoneEffect.d.ts +1 -0
- package/dist/glHalftoneEffect.d.ts.map +1 -1
- package/dist/glHalftoneEffect.js +4 -0
- package/dist/glHalftoneEffect.js.map +1 -1
- package/dist/glInnerGlowEffect.d.ts +1 -0
- package/dist/glInnerGlowEffect.d.ts.map +1 -1
- package/dist/glInnerGlowEffect.js +6 -2
- package/dist/glInnerGlowEffect.js.map +1 -1
- package/dist/glInnerShadowEffect.d.ts +1 -0
- package/dist/glInnerShadowEffect.d.ts.map +1 -1
- package/dist/glInnerShadowEffect.js +6 -2
- package/dist/glInnerShadowEffect.js.map +1 -1
- package/dist/glKuwaharaEffect.d.ts +1 -0
- package/dist/glKuwaharaEffect.d.ts.map +1 -1
- package/dist/glKuwaharaEffect.js +4 -0
- package/dist/glKuwaharaEffect.js.map +1 -1
- package/dist/glLensDirtEffect.d.ts +1 -0
- package/dist/glLensDirtEffect.d.ts.map +1 -1
- package/dist/glLensDirtEffect.js +4 -0
- package/dist/glLensDirtEffect.js.map +1 -1
- package/dist/glLensDistortionEffect.d.ts +1 -0
- package/dist/glLensDistortionEffect.d.ts.map +1 -1
- package/dist/glLensDistortionEffect.js +4 -0
- package/dist/glLensDistortionEffect.js.map +1 -1
- package/dist/glLensFlareEffect.d.ts +1 -0
- package/dist/glLensFlareEffect.d.ts.map +1 -1
- package/dist/glLensFlareEffect.js +4 -0
- package/dist/glLensFlareEffect.js.map +1 -1
- package/dist/glMedianEffect.d.ts +1 -0
- package/dist/glMedianEffect.d.ts.map +1 -1
- package/dist/glMedianEffect.js +4 -0
- package/dist/glMedianEffect.js.map +1 -1
- package/dist/glMotionBlurEffect.d.ts +1 -0
- package/dist/glMotionBlurEffect.d.ts.map +1 -1
- package/dist/glMotionBlurEffect.js +4 -0
- package/dist/glMotionBlurEffect.js.map +1 -1
- package/dist/glOuterGlowEffect.d.ts +1 -0
- package/dist/glOuterGlowEffect.d.ts.map +1 -1
- package/dist/glOuterGlowEffect.js +4 -0
- package/dist/glOuterGlowEffect.js.map +1 -1
- package/dist/glOutlineEffect.d.ts +1 -0
- package/dist/glOutlineEffect.d.ts.map +1 -1
- package/dist/glOutlineEffect.js +4 -0
- package/dist/glOutlineEffect.js.map +1 -1
- package/dist/glPixelateEffect.d.ts +1 -0
- package/dist/glPixelateEffect.d.ts.map +1 -1
- package/dist/glPixelateEffect.js +4 -0
- package/dist/glPixelateEffect.js.map +1 -1
- package/dist/glPosterizeEffect.d.ts +1 -0
- package/dist/glPosterizeEffect.d.ts.map +1 -1
- package/dist/glPosterizeEffect.js +4 -0
- package/dist/glPosterizeEffect.js.map +1 -1
- package/dist/glRadialBlurEffect.d.ts +1 -0
- package/dist/glRadialBlurEffect.d.ts.map +1 -1
- package/dist/glRadialBlurEffect.js +4 -0
- package/dist/glRadialBlurEffect.js.map +1 -1
- package/dist/glRenderEffectPipeline.d.ts +2 -2
- package/dist/glRenderEffectPipeline.d.ts.map +1 -1
- package/dist/glRenderEffectPipeline.js +14 -7
- package/dist/glRenderEffectPipeline.js.map +1 -1
- package/dist/glRenderEffectRegistry.d.ts.map +1 -1
- package/dist/glRenderEffectRegistry.js +8 -10
- package/dist/glRenderEffectRegistry.js.map +1 -1
- package/dist/glRenderTextureEffect.d.ts +5 -0
- package/dist/glRenderTextureEffect.d.ts.map +1 -0
- package/dist/glRenderTextureEffect.js +83 -0
- package/dist/glRenderTextureEffect.js.map +1 -0
- package/dist/glScanlinesEffect.d.ts +1 -0
- package/dist/glScanlinesEffect.d.ts.map +1 -1
- package/dist/glScanlinesEffect.js +4 -0
- package/dist/glScanlinesEffect.js.map +1 -1
- package/dist/glScreenSpaceFogEffect.d.ts +1 -0
- package/dist/glScreenSpaceFogEffect.d.ts.map +1 -1
- package/dist/glScreenSpaceFogEffect.js +4 -0
- package/dist/glScreenSpaceFogEffect.js.map +1 -1
- package/dist/glSharpenEffect.d.ts +1 -0
- package/dist/glSharpenEffect.d.ts.map +1 -1
- package/dist/glSharpenEffect.js +4 -0
- package/dist/glSharpenEffect.js.map +1 -1
- package/dist/glSketchEffect.d.ts +1 -0
- package/dist/glSketchEffect.d.ts.map +1 -1
- package/dist/glSketchEffect.js +4 -0
- package/dist/glSketchEffect.js.map +1 -1
- package/dist/glSmaaEffect.d.ts +1 -0
- package/dist/glSmaaEffect.d.ts.map +1 -1
- package/dist/glSmaaEffect.js +4 -0
- package/dist/glSmaaEffect.js.map +1 -1
- package/dist/glSsaoEffect.d.ts +1 -0
- package/dist/glSsaoEffect.d.ts.map +1 -1
- package/dist/glSsaoEffect.js +4 -0
- package/dist/glSsaoEffect.js.map +1 -1
- package/dist/glTiltShiftEffect.d.ts +1 -0
- package/dist/glTiltShiftEffect.d.ts.map +1 -1
- package/dist/glTiltShiftEffect.js +4 -0
- package/dist/glTiltShiftEffect.js.map +1 -1
- package/dist/glToneMapEffect.d.ts +1 -0
- package/dist/glToneMapEffect.d.ts.map +1 -1
- package/dist/glToneMapEffect.js +4 -0
- package/dist/glToneMapEffect.js.map +1 -1
- package/dist/glVignetteEffect.d.ts +1 -0
- package/dist/glVignetteEffect.d.ts.map +1 -1
- package/dist/glVignetteEffect.js +4 -0
- package/dist/glVignetteEffect.js.map +1 -1
- package/dist/glWhiteBalanceEffect.d.ts +1 -0
- package/dist/glWhiteBalanceEffect.d.ts.map +1 -1
- package/dist/glWhiteBalanceEffect.js +4 -0
- package/dist/glWhiteBalanceEffect.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +9 -6
- package/src/enableGlRenderEffectGuards.test.ts +156 -0
- package/src/glBevelEffect.test.ts +7 -1
- package/src/glBlendEffect.test.ts +26 -0
- package/src/glBloomEffect.test.ts +7 -1
- package/src/glBlurEffect.test.ts +69 -1
- package/src/glBokehDepthOfFieldEffect.test.ts +11 -1
- package/src/glCameraMotionBlurEffect.test.ts +11 -1
- package/src/glChromaticAberrationEffect.test.ts +7 -0
- package/src/glCompositeEffect.test.ts +7 -0
- package/src/glContactShadowsEffect.test.ts +43 -0
- package/src/glConvolutionEffect.test.ts +11 -1
- package/src/glCrtEffect.test.ts +7 -1
- package/src/glCustomShaderEffect.test.ts +7 -0
- package/src/glDirectionalBlurEffect.test.ts +11 -1
- package/src/glDisplacementEffect.test.ts +11 -1
- package/src/glDitherEffect.test.ts +7 -1
- package/src/glDropShadowEffect.test.ts +11 -9
- package/src/glEffectBoxBlur.test.ts +0 -5
- package/src/glFilmGrainEffect.test.ts +11 -1
- package/src/glFxaaEffect.test.ts +7 -1
- package/src/glGlitchEffect.test.ts +7 -1
- package/src/glGodRaysEffect.test.ts +7 -1
- package/src/glGradientBevelEffect.test.ts +11 -1
- package/src/glGradientGlowEffect.test.ts +11 -1
- package/src/glHalftoneEffect.test.ts +7 -1
- package/src/glInnerGlowEffect.test.ts +11 -9
- package/src/glInnerShadowEffect.test.ts +11 -9
- package/src/glKuwaharaEffect.test.ts +7 -1
- package/src/glLensDirtEffect.test.ts +7 -1
- package/src/glLensDistortionEffect.test.ts +11 -1
- package/src/glLensFlareEffect.test.ts +11 -1
- package/src/glMedianEffect.test.ts +7 -1
- package/src/glMotionBlurEffect.test.ts +11 -1
- package/src/glOuterGlowEffect.test.ts +11 -9
- package/src/glOutlineEffect.test.ts +7 -1
- package/src/glPixelateEffect.test.ts +7 -1
- package/src/glPosterizeEffect.test.ts +11 -1
- package/src/glRadialBlurEffect.test.ts +11 -1
- package/src/glRenderEffectPipeline.test.ts +15 -0
- package/src/glRenderEffectRegistry.test.ts +24 -14
- package/src/glRenderTextureEffect.test.ts +246 -0
- package/src/glScanlinesEffect.test.ts +11 -1
- package/src/glScreenSpaceFogEffect.test.ts +11 -1
- package/src/glSharpenEffect.test.ts +7 -1
- package/src/glSketchEffect.test.ts +7 -1
- package/src/glSmaaEffect.test.ts +7 -1
- package/src/glSpatialEffectRegistration.test.ts +64 -0
- package/src/glSsaoEffect.test.ts +7 -1
- package/src/glTiltShiftEffect.test.ts +11 -1
- package/src/glToneMapEffect.test.ts +7 -1
- package/src/glVignetteEffect.test.ts +7 -1
- package/src/glWhiteBalanceEffect.test.ts +11 -1
- package/dist/glSsrEffect.d.ts +0 -4
- package/dist/glSsrEffect.d.ts.map +0 -1
- package/dist/glSsrEffect.js +0 -24
- package/dist/glSsrEffect.js.map +0 -1
- package/dist/glTaaEffect.d.ts +0 -4
- package/dist/glTaaEffect.d.ts.map +0 -1
- package/dist/glTaaEffect.js +0 -22
- package/dist/glTaaEffect.js.map +0 -1
- package/src/glSsrEffect.test.ts +0 -13
- package/src/glTaaEffect.test.ts +0 -13
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyGodRaysEffectToGl, defaultGlGodRaysEffectRunner } from './glGodRaysEffect';
|
|
1
|
+
import { applyGodRaysEffectToGl, defaultGlGodRaysEffectRunner, registerGlGodRaysEffect } from './glGodRaysEffect';
|
|
2
2
|
|
|
3
3
|
describe('applyGodRaysEffectToGl', () => {
|
|
4
4
|
it('is a function', () => {
|
|
@@ -11,3 +11,9 @@ describe('defaultGlGodRaysEffectRunner', () => {
|
|
|
11
11
|
expect(typeof defaultGlGodRaysEffectRunner).toBe('function');
|
|
12
12
|
});
|
|
13
13
|
});
|
|
14
|
+
|
|
15
|
+
describe('registerGlGodRaysEffect', () => {
|
|
16
|
+
it('is a separately importable registration primitive', () => {
|
|
17
|
+
expect(registerGlGodRaysEffect).toBeTypeOf('function');
|
|
18
|
+
});
|
|
19
|
+
});
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
applyGradientBevelEffectToGl,
|
|
3
|
+
defaultGlGradientBevelEffectRunner,
|
|
4
|
+
registerGlGradientBevelEffect,
|
|
5
|
+
} from './glGradientBevelEffect';
|
|
2
6
|
|
|
3
7
|
describe('applyGradientBevelEffectToGl', () => {
|
|
4
8
|
it('is a function', () => {
|
|
@@ -11,3 +15,9 @@ describe('defaultGlGradientBevelEffectRunner', () => {
|
|
|
11
15
|
expect(typeof defaultGlGradientBevelEffectRunner).toBe('function');
|
|
12
16
|
});
|
|
13
17
|
});
|
|
18
|
+
|
|
19
|
+
describe('registerGlGradientBevelEffect', () => {
|
|
20
|
+
it('is a separately importable registration primitive', () => {
|
|
21
|
+
expect(registerGlGradientBevelEffect).toBeTypeOf('function');
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
applyGradientGlowEffectToGl,
|
|
3
|
+
defaultGlGradientGlowEffectRunner,
|
|
4
|
+
registerGlGradientGlowEffect,
|
|
5
|
+
} from './glGradientGlowEffect';
|
|
2
6
|
|
|
3
7
|
describe('applyGradientGlowEffectToGl', () => {
|
|
4
8
|
it('is a function', () => {
|
|
@@ -11,3 +15,9 @@ describe('defaultGlGradientGlowEffectRunner', () => {
|
|
|
11
15
|
expect(typeof defaultGlGradientGlowEffectRunner).toBe('function');
|
|
12
16
|
});
|
|
13
17
|
});
|
|
18
|
+
|
|
19
|
+
describe('registerGlGradientGlowEffect', () => {
|
|
20
|
+
it('is a separately importable registration primitive', () => {
|
|
21
|
+
expect(registerGlGradientGlowEffect).toBeTypeOf('function');
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyHalftoneEffectToGl, defaultGlHalftoneEffectRunner } from './glHalftoneEffect';
|
|
1
|
+
import { applyHalftoneEffectToGl, defaultGlHalftoneEffectRunner, registerGlHalftoneEffect } from './glHalftoneEffect';
|
|
2
2
|
|
|
3
3
|
describe('applyHalftoneEffectToGl', () => {
|
|
4
4
|
it('is a function', () => {
|
|
@@ -11,3 +11,9 @@ describe('defaultGlHalftoneEffectRunner', () => {
|
|
|
11
11
|
expect(typeof defaultGlHalftoneEffectRunner).toBe('function');
|
|
12
12
|
});
|
|
13
13
|
});
|
|
14
|
+
|
|
15
|
+
describe('registerGlHalftoneEffect', () => {
|
|
16
|
+
it('is a separately importable registration primitive', () => {
|
|
17
|
+
expect(registerGlHalftoneEffect).toBeTypeOf('function');
|
|
18
|
+
});
|
|
19
|
+
});
|
|
@@ -33,7 +33,11 @@ import { drawGlFullscreenPass } from '@flighthq/render-gl/contract';
|
|
|
33
33
|
|
|
34
34
|
import { applyGlEffectBlitPass } from './glEffectBlitShader';
|
|
35
35
|
import { applyGlEffectBoxBlur } from './glEffectBoxBlur';
|
|
36
|
-
import {
|
|
36
|
+
import {
|
|
37
|
+
applyInnerGlowEffectToGl,
|
|
38
|
+
defaultGlInnerGlowEffectRunner,
|
|
39
|
+
registerGlInnerGlowEffect,
|
|
40
|
+
} from './glInnerGlowEffect';
|
|
37
41
|
|
|
38
42
|
describe('applyInnerGlowEffectToGl', () => {
|
|
39
43
|
it('is a function', () => {
|
|
@@ -124,14 +128,6 @@ beforeEach(() => {
|
|
|
124
128
|
vi.clearAllMocks();
|
|
125
129
|
});
|
|
126
130
|
|
|
127
|
-
afterAll(() => {
|
|
128
|
-
vi.doUnmock('@flighthq/render-gl');
|
|
129
|
-
vi.doUnmock('./glEffectBlitShader');
|
|
130
|
-
vi.doUnmock('./glEffectBoxBlur');
|
|
131
|
-
vi.doUnmock('./glEffectTintShader');
|
|
132
|
-
vi.resetModules();
|
|
133
|
-
});
|
|
134
|
-
|
|
135
131
|
function createState(): never {
|
|
136
132
|
return { gl: {} } as never;
|
|
137
133
|
}
|
|
@@ -143,3 +139,9 @@ function createPool(): never {
|
|
|
143
139
|
function createTarget(id: string): never {
|
|
144
140
|
return { id, width: 32, height: 16, format: 'rgba8', texture: {} } as never;
|
|
145
141
|
}
|
|
142
|
+
|
|
143
|
+
describe('registerGlInnerGlowEffect', () => {
|
|
144
|
+
it('is a separately importable registration primitive', () => {
|
|
145
|
+
expect(registerGlInnerGlowEffect).toBeTypeOf('function');
|
|
146
|
+
});
|
|
147
|
+
});
|
|
@@ -34,7 +34,11 @@ import { drawGlFullscreenPass } from '@flighthq/render-gl/contract';
|
|
|
34
34
|
|
|
35
35
|
import { applyGlEffectBlitPass } from './glEffectBlitShader';
|
|
36
36
|
import { applyGlEffectBoxBlur } from './glEffectBoxBlur';
|
|
37
|
-
import {
|
|
37
|
+
import {
|
|
38
|
+
applyInnerShadowEffectToGl,
|
|
39
|
+
defaultGlInnerShadowEffectRunner,
|
|
40
|
+
registerGlInnerShadowEffect,
|
|
41
|
+
} from './glInnerShadowEffect';
|
|
38
42
|
|
|
39
43
|
describe('applyInnerShadowEffectToGl', () => {
|
|
40
44
|
it('is a function', () => {
|
|
@@ -124,14 +128,6 @@ beforeEach(() => {
|
|
|
124
128
|
vi.clearAllMocks();
|
|
125
129
|
});
|
|
126
130
|
|
|
127
|
-
afterAll(() => {
|
|
128
|
-
vi.doUnmock('@flighthq/render-gl');
|
|
129
|
-
vi.doUnmock('./glEffectBlitShader');
|
|
130
|
-
vi.doUnmock('./glEffectBoxBlur');
|
|
131
|
-
vi.doUnmock('./glEffectTintShader');
|
|
132
|
-
vi.resetModules();
|
|
133
|
-
});
|
|
134
|
-
|
|
135
131
|
function createState(): never {
|
|
136
132
|
return { gl: {} } as never;
|
|
137
133
|
}
|
|
@@ -143,3 +139,9 @@ function createPool(): never {
|
|
|
143
139
|
function createTarget(id: string): never {
|
|
144
140
|
return { id, width: 32, height: 16, format: 'rgba8', texture: {} } as never;
|
|
145
141
|
}
|
|
142
|
+
|
|
143
|
+
describe('registerGlInnerShadowEffect', () => {
|
|
144
|
+
it('is a separately importable registration primitive', () => {
|
|
145
|
+
expect(registerGlInnerShadowEffect).toBeTypeOf('function');
|
|
146
|
+
});
|
|
147
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyKuwaharaEffectToGl, defaultGlKuwaharaEffectRunner } from './glKuwaharaEffect';
|
|
1
|
+
import { applyKuwaharaEffectToGl, defaultGlKuwaharaEffectRunner, registerGlKuwaharaEffect } from './glKuwaharaEffect';
|
|
2
2
|
|
|
3
3
|
describe('applyKuwaharaEffectToGl', () => {
|
|
4
4
|
it('is a function', () => {
|
|
@@ -11,3 +11,9 @@ describe('defaultGlKuwaharaEffectRunner', () => {
|
|
|
11
11
|
expect(typeof defaultGlKuwaharaEffectRunner).toBe('function');
|
|
12
12
|
});
|
|
13
13
|
});
|
|
14
|
+
|
|
15
|
+
describe('registerGlKuwaharaEffect', () => {
|
|
16
|
+
it('is a separately importable registration primitive', () => {
|
|
17
|
+
expect(registerGlKuwaharaEffect).toBeTypeOf('function');
|
|
18
|
+
});
|
|
19
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyLensDirtEffectToGl, defaultGlLensDirtEffectRunner } from './glLensDirtEffect';
|
|
1
|
+
import { applyLensDirtEffectToGl, defaultGlLensDirtEffectRunner, registerGlLensDirtEffect } from './glLensDirtEffect';
|
|
2
2
|
|
|
3
3
|
describe('applyLensDirtEffectToGl', () => {
|
|
4
4
|
it('is a function', () => {
|
|
@@ -11,3 +11,9 @@ describe('defaultGlLensDirtEffectRunner', () => {
|
|
|
11
11
|
expect(typeof defaultGlLensDirtEffectRunner).toBe('function');
|
|
12
12
|
});
|
|
13
13
|
});
|
|
14
|
+
|
|
15
|
+
describe('registerGlLensDirtEffect', () => {
|
|
16
|
+
it('is a separately importable registration primitive', () => {
|
|
17
|
+
expect(registerGlLensDirtEffect).toBeTypeOf('function');
|
|
18
|
+
});
|
|
19
|
+
});
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
applyLensDistortionEffectToGl,
|
|
3
|
+
defaultGlLensDistortionEffectRunner,
|
|
4
|
+
registerGlLensDistortionEffect,
|
|
5
|
+
} from './glLensDistortionEffect';
|
|
2
6
|
|
|
3
7
|
describe('applyLensDistortionEffectToGl', () => {
|
|
4
8
|
it('is a function', () => {
|
|
@@ -11,3 +15,9 @@ describe('defaultGlLensDistortionEffectRunner', () => {
|
|
|
11
15
|
expect(typeof defaultGlLensDistortionEffectRunner).toBe('function');
|
|
12
16
|
});
|
|
13
17
|
});
|
|
18
|
+
|
|
19
|
+
describe('registerGlLensDistortionEffect', () => {
|
|
20
|
+
it('is a separately importable registration primitive', () => {
|
|
21
|
+
expect(registerGlLensDistortionEffect).toBeTypeOf('function');
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
applyLensFlareEffectToGl,
|
|
3
|
+
defaultGlLensFlareEffectRunner,
|
|
4
|
+
registerGlLensFlareEffect,
|
|
5
|
+
} from './glLensFlareEffect';
|
|
2
6
|
|
|
3
7
|
describe('applyLensFlareEffectToGl', () => {
|
|
4
8
|
it('is a function', () => {
|
|
@@ -11,3 +15,9 @@ describe('defaultGlLensFlareEffectRunner', () => {
|
|
|
11
15
|
expect(typeof defaultGlLensFlareEffectRunner).toBe('function');
|
|
12
16
|
});
|
|
13
17
|
});
|
|
18
|
+
|
|
19
|
+
describe('registerGlLensFlareEffect', () => {
|
|
20
|
+
it('is a separately importable registration primitive', () => {
|
|
21
|
+
expect(registerGlLensFlareEffect).toBeTypeOf('function');
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyMedianEffectToGl, defaultGlMedianEffectRunner } from './glMedianEffect';
|
|
1
|
+
import { applyMedianEffectToGl, defaultGlMedianEffectRunner, registerGlMedianEffect } from './glMedianEffect';
|
|
2
2
|
|
|
3
3
|
describe('applyMedianEffectToGl', () => {
|
|
4
4
|
it('is a function', () => {
|
|
@@ -11,3 +11,9 @@ describe('defaultGlMedianEffectRunner', () => {
|
|
|
11
11
|
expect(typeof defaultGlMedianEffectRunner).toBe('function');
|
|
12
12
|
});
|
|
13
13
|
});
|
|
14
|
+
|
|
15
|
+
describe('registerGlMedianEffect', () => {
|
|
16
|
+
it('is a separately importable registration primitive', () => {
|
|
17
|
+
expect(registerGlMedianEffect).toBeTypeOf('function');
|
|
18
|
+
});
|
|
19
|
+
});
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
applyMotionBlurEffectToGl,
|
|
3
|
+
defaultGlMotionBlurEffectRunner,
|
|
4
|
+
registerGlMotionBlurEffect,
|
|
5
|
+
} from './glMotionBlurEffect';
|
|
2
6
|
|
|
3
7
|
describe('applyMotionBlurEffectToGl', () => {
|
|
4
8
|
it('is a function', () => {
|
|
@@ -11,3 +15,9 @@ describe('defaultGlMotionBlurEffectRunner', () => {
|
|
|
11
15
|
expect(typeof defaultGlMotionBlurEffectRunner).toBe('function');
|
|
12
16
|
});
|
|
13
17
|
});
|
|
18
|
+
|
|
19
|
+
describe('registerGlMotionBlurEffect', () => {
|
|
20
|
+
it('is a separately importable registration primitive', () => {
|
|
21
|
+
expect(registerGlMotionBlurEffect).toBeTypeOf('function');
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -29,7 +29,11 @@ vi.mock('./glEffectTintShader', () => ({
|
|
|
29
29
|
}));
|
|
30
30
|
|
|
31
31
|
import { applyGlEffectBlitPass, applyGlEffectErasePass } from './glEffectBlitShader';
|
|
32
|
-
import {
|
|
32
|
+
import {
|
|
33
|
+
applyOuterGlowEffectToGl,
|
|
34
|
+
defaultGlOuterGlowEffectRunner,
|
|
35
|
+
registerGlOuterGlowEffect,
|
|
36
|
+
} from './glOuterGlowEffect';
|
|
33
37
|
|
|
34
38
|
describe('applyOuterGlowEffectToGl', () => {
|
|
35
39
|
it('is a function', () => {
|
|
@@ -83,14 +87,6 @@ beforeEach(() => {
|
|
|
83
87
|
vi.clearAllMocks();
|
|
84
88
|
});
|
|
85
89
|
|
|
86
|
-
afterAll(() => {
|
|
87
|
-
vi.doUnmock('@flighthq/render-gl');
|
|
88
|
-
vi.doUnmock('./glEffectBlitShader');
|
|
89
|
-
vi.doUnmock('./glEffectBoxBlur');
|
|
90
|
-
vi.doUnmock('./glEffectTintShader');
|
|
91
|
-
vi.resetModules();
|
|
92
|
-
});
|
|
93
|
-
|
|
94
90
|
function createState(): never {
|
|
95
91
|
return { gl: {} } as never;
|
|
96
92
|
}
|
|
@@ -102,3 +98,9 @@ function createPool(): never {
|
|
|
102
98
|
function createTarget(id: string): never {
|
|
103
99
|
return { id, width: 32, height: 16, format: 'rgba8', texture: {} } as never;
|
|
104
100
|
}
|
|
101
|
+
|
|
102
|
+
describe('registerGlOuterGlowEffect', () => {
|
|
103
|
+
it('is a separately importable registration primitive', () => {
|
|
104
|
+
expect(registerGlOuterGlowEffect).toBeTypeOf('function');
|
|
105
|
+
});
|
|
106
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyOutlineEffectToGl, defaultGlOutlineEffectRunner } from './glOutlineEffect';
|
|
1
|
+
import { applyOutlineEffectToGl, defaultGlOutlineEffectRunner, registerGlOutlineEffect } from './glOutlineEffect';
|
|
2
2
|
|
|
3
3
|
describe('applyOutlineEffectToGl', () => {
|
|
4
4
|
it('is a function', () => {
|
|
@@ -11,3 +11,9 @@ describe('defaultGlOutlineEffectRunner', () => {
|
|
|
11
11
|
expect(typeof defaultGlOutlineEffectRunner).toBe('function');
|
|
12
12
|
});
|
|
13
13
|
});
|
|
14
|
+
|
|
15
|
+
describe('registerGlOutlineEffect', () => {
|
|
16
|
+
it('is a separately importable registration primitive', () => {
|
|
17
|
+
expect(registerGlOutlineEffect).toBeTypeOf('function');
|
|
18
|
+
});
|
|
19
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyPixelateEffectToGl, defaultGlPixelateEffectRunner } from './glPixelateEffect';
|
|
1
|
+
import { applyPixelateEffectToGl, defaultGlPixelateEffectRunner, registerGlPixelateEffect } from './glPixelateEffect';
|
|
2
2
|
|
|
3
3
|
describe('applyPixelateEffectToGl', () => {
|
|
4
4
|
it('is a function', () => {
|
|
@@ -11,3 +11,9 @@ describe('defaultGlPixelateEffectRunner', () => {
|
|
|
11
11
|
expect(typeof defaultGlPixelateEffectRunner).toBe('function');
|
|
12
12
|
});
|
|
13
13
|
});
|
|
14
|
+
|
|
15
|
+
describe('registerGlPixelateEffect', () => {
|
|
16
|
+
it('is a separately importable registration primitive', () => {
|
|
17
|
+
expect(registerGlPixelateEffect).toBeTypeOf('function');
|
|
18
|
+
});
|
|
19
|
+
});
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
applyPosterizeEffectToGl,
|
|
3
|
+
defaultGlPosterizeEffectRunner,
|
|
4
|
+
registerGlPosterizeEffect,
|
|
5
|
+
} from './glPosterizeEffect';
|
|
2
6
|
|
|
3
7
|
describe('applyPosterizeEffectToGl', () => {
|
|
4
8
|
it('is a function', () => {
|
|
@@ -11,3 +15,9 @@ describe('defaultGlPosterizeEffectRunner', () => {
|
|
|
11
15
|
expect(typeof defaultGlPosterizeEffectRunner).toBe('function');
|
|
12
16
|
});
|
|
13
17
|
});
|
|
18
|
+
|
|
19
|
+
describe('registerGlPosterizeEffect', () => {
|
|
20
|
+
it('is a separately importable registration primitive', () => {
|
|
21
|
+
expect(registerGlPosterizeEffect).toBeTypeOf('function');
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
applyRadialBlurEffectToGl,
|
|
3
|
+
defaultGlRadialBlurEffectRunner,
|
|
4
|
+
registerGlRadialBlurEffect,
|
|
5
|
+
} from './glRadialBlurEffect';
|
|
2
6
|
|
|
3
7
|
describe('applyRadialBlurEffectToGl', () => {
|
|
4
8
|
it('is a function', () => {
|
|
@@ -11,3 +15,9 @@ describe('defaultGlRadialBlurEffectRunner', () => {
|
|
|
11
15
|
expect(typeof defaultGlRadialBlurEffectRunner).toBe('function');
|
|
12
16
|
});
|
|
13
17
|
});
|
|
18
|
+
|
|
19
|
+
describe('registerGlRadialBlurEffect', () => {
|
|
20
|
+
it('is a separately importable registration primitive', () => {
|
|
21
|
+
expect(registerGlRadialBlurEffect).toBeTypeOf('function');
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { createGlRenderState, endGlRenderPass } from '@flighthq/render-gl/contract';
|
|
2
|
+
|
|
1
3
|
import {
|
|
2
4
|
beginGlRenderEffectPipeline,
|
|
3
5
|
createGlRenderEffectPipeline,
|
|
@@ -10,6 +12,19 @@ describe('beginGlRenderEffectPipeline', () => {
|
|
|
10
12
|
it('is a function', () => {
|
|
11
13
|
expect(typeof beginGlRenderEffectPipeline).toBe('function');
|
|
12
14
|
});
|
|
15
|
+
|
|
16
|
+
it('redeclares the explicit color space on a reused scene target', () => {
|
|
17
|
+
const state = createGlRenderState(document.createElement('canvas'));
|
|
18
|
+
const pipeline = createGlRenderEffectPipeline(state);
|
|
19
|
+
|
|
20
|
+
beginGlRenderEffectPipeline(state, pipeline);
|
|
21
|
+
const target = pipeline.sceneTarget;
|
|
22
|
+
endGlRenderPass(state);
|
|
23
|
+
beginGlRenderEffectPipeline(state, pipeline, 'linear');
|
|
24
|
+
|
|
25
|
+
expect(pipeline.sceneTarget).toBe(target);
|
|
26
|
+
expect(target?.colorSpace).toBe('linear');
|
|
27
|
+
});
|
|
13
28
|
});
|
|
14
29
|
|
|
15
30
|
describe('createGlRenderEffectPipeline', () => {
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import { createGlRenderState } from '@flighthq/render-gl/contract';
|
|
2
|
+
import type { GlRenderState } from '@flighthq/types/contract';
|
|
3
|
+
|
|
1
4
|
import { getGlRenderEffectRunner, hasGlRenderEffectRunner, registerGlRenderEffect } from './glRenderEffectRegistry';
|
|
2
5
|
|
|
3
6
|
describe('getGlRenderEffectRunner', () => {
|
|
@@ -6,8 +9,8 @@ describe('getGlRenderEffectRunner', () => {
|
|
|
6
9
|
});
|
|
7
10
|
|
|
8
11
|
it('returns null for an unregistered kind', () => {
|
|
9
|
-
const
|
|
10
|
-
expect(getGlRenderEffectRunner(
|
|
12
|
+
const state = createState();
|
|
13
|
+
expect(getGlRenderEffectRunner(state, 'UnknownEffect')).toBeNull();
|
|
11
14
|
});
|
|
12
15
|
});
|
|
13
16
|
|
|
@@ -17,15 +20,15 @@ describe('hasGlRenderEffectRunner', () => {
|
|
|
17
20
|
});
|
|
18
21
|
|
|
19
22
|
it('returns false for an unregistered kind', () => {
|
|
20
|
-
const
|
|
21
|
-
expect(hasGlRenderEffectRunner(
|
|
23
|
+
const state = createState();
|
|
24
|
+
expect(hasGlRenderEffectRunner(state, 'NotRegisteredEffect')).toBe(false);
|
|
22
25
|
});
|
|
23
26
|
|
|
24
27
|
it('returns true after a runner is registered', () => {
|
|
25
|
-
const
|
|
28
|
+
const state = createState();
|
|
26
29
|
const runner = vi.fn();
|
|
27
|
-
registerGlRenderEffect(
|
|
28
|
-
expect(hasGlRenderEffectRunner(
|
|
30
|
+
registerGlRenderEffect(state, 'HasTestEffect', runner);
|
|
31
|
+
expect(hasGlRenderEffectRunner(state, 'HasTestEffect')).toBe(true);
|
|
29
32
|
});
|
|
30
33
|
});
|
|
31
34
|
|
|
@@ -35,18 +38,25 @@ describe('registerGlRenderEffect', () => {
|
|
|
35
38
|
});
|
|
36
39
|
|
|
37
40
|
it('registers and retrieves a runner', () => {
|
|
38
|
-
const
|
|
41
|
+
const state = createState();
|
|
39
42
|
const runner = vi.fn();
|
|
40
|
-
registerGlRenderEffect(
|
|
41
|
-
expect(getGlRenderEffectRunner(
|
|
43
|
+
registerGlRenderEffect(state, 'TestEffect', runner);
|
|
44
|
+
expect(getGlRenderEffectRunner(state, 'TestEffect')).toBe(runner);
|
|
42
45
|
});
|
|
43
46
|
|
|
44
47
|
it('overwrites an existing runner under the same kind', () => {
|
|
45
|
-
const
|
|
48
|
+
const state = createState();
|
|
46
49
|
const runnerA = vi.fn();
|
|
47
50
|
const runnerB = vi.fn();
|
|
48
|
-
registerGlRenderEffect(
|
|
49
|
-
registerGlRenderEffect(
|
|
50
|
-
expect(getGlRenderEffectRunner(
|
|
51
|
+
registerGlRenderEffect(state, 'TestEffect2', runnerA);
|
|
52
|
+
registerGlRenderEffect(state, 'TestEffect2', runnerB);
|
|
53
|
+
expect(getGlRenderEffectRunner(state, 'TestEffect2')).toBe(runnerB);
|
|
51
54
|
});
|
|
52
55
|
});
|
|
56
|
+
|
|
57
|
+
function createState(): GlRenderState {
|
|
58
|
+
const canvas = document.createElement('canvas');
|
|
59
|
+
canvas.width = 16;
|
|
60
|
+
canvas.height = 16;
|
|
61
|
+
return createGlRenderState(canvas);
|
|
62
|
+
}
|