@flighthq/effects-wgpu 0.1.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.
Files changed (245) hide show
  1. package/dist/index.d.ts +49 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +49 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/wgpuBloomEffect.d.ts +4 -0
  6. package/dist/wgpuBloomEffect.d.ts.map +1 -0
  7. package/dist/wgpuBloomEffect.js +72 -0
  8. package/dist/wgpuBloomEffect.js.map +1 -0
  9. package/dist/wgpuBokehDepthOfFieldEffect.d.ts +4 -0
  10. package/dist/wgpuBokehDepthOfFieldEffect.d.ts.map +1 -0
  11. package/dist/wgpuBokehDepthOfFieldEffect.js +51 -0
  12. package/dist/wgpuBokehDepthOfFieldEffect.js.map +1 -0
  13. package/dist/wgpuBrightnessContrastEffect.d.ts +4 -0
  14. package/dist/wgpuBrightnessContrastEffect.d.ts.map +1 -0
  15. package/dist/wgpuBrightnessContrastEffect.js +29 -0
  16. package/dist/wgpuBrightnessContrastEffect.js.map +1 -0
  17. package/dist/wgpuCameraMotionBlurEffect.d.ts +4 -0
  18. package/dist/wgpuCameraMotionBlurEffect.d.ts.map +1 -0
  19. package/dist/wgpuCameraMotionBlurEffect.js +49 -0
  20. package/dist/wgpuCameraMotionBlurEffect.js.map +1 -0
  21. package/dist/wgpuChannelMixerEffect.d.ts +4 -0
  22. package/dist/wgpuChannelMixerEffect.d.ts.map +1 -0
  23. package/dist/wgpuChannelMixerEffect.js +34 -0
  24. package/dist/wgpuChannelMixerEffect.js.map +1 -0
  25. package/dist/wgpuChromaticAberrationEffect.d.ts +4 -0
  26. package/dist/wgpuChromaticAberrationEffect.d.ts.map +1 -0
  27. package/dist/wgpuChromaticAberrationEffect.js +40 -0
  28. package/dist/wgpuChromaticAberrationEffect.js.map +1 -0
  29. package/dist/wgpuColorGradeEffect.d.ts +4 -0
  30. package/dist/wgpuColorGradeEffect.d.ts.map +1 -0
  31. package/dist/wgpuColorGradeEffect.js +52 -0
  32. package/dist/wgpuColorGradeEffect.js.map +1 -0
  33. package/dist/wgpuCrtEffect.d.ts +4 -0
  34. package/dist/wgpuCrtEffect.d.ts.map +1 -0
  35. package/dist/wgpuCrtEffect.js +60 -0
  36. package/dist/wgpuCrtEffect.js.map +1 -0
  37. package/dist/wgpuDirectionalBlurEffect.d.ts +4 -0
  38. package/dist/wgpuDirectionalBlurEffect.d.ts.map +1 -0
  39. package/dist/wgpuDirectionalBlurEffect.js +52 -0
  40. package/dist/wgpuDirectionalBlurEffect.js.map +1 -0
  41. package/dist/wgpuDisplacementEffect.d.ts +4 -0
  42. package/dist/wgpuDisplacementEffect.d.ts.map +1 -0
  43. package/dist/wgpuDisplacementEffect.js +44 -0
  44. package/dist/wgpuDisplacementEffect.js.map +1 -0
  45. package/dist/wgpuDitherEffect.d.ts +4 -0
  46. package/dist/wgpuDitherEffect.d.ts.map +1 -0
  47. package/dist/wgpuDitherEffect.js +45 -0
  48. package/dist/wgpuDitherEffect.js.map +1 -0
  49. package/dist/wgpuEffectProgramCache.d.ts +4 -0
  50. package/dist/wgpuEffectProgramCache.d.ts.map +1 -0
  51. package/dist/wgpuEffectProgramCache.js +26 -0
  52. package/dist/wgpuEffectProgramCache.js.map +1 -0
  53. package/dist/wgpuExposureEffect.d.ts +4 -0
  54. package/dist/wgpuExposureEffect.d.ts.map +1 -0
  55. package/dist/wgpuExposureEffect.js +28 -0
  56. package/dist/wgpuExposureEffect.js.map +1 -0
  57. package/dist/wgpuFilmGrainEffect.d.ts +4 -0
  58. package/dist/wgpuFilmGrainEffect.d.ts.map +1 -0
  59. package/dist/wgpuFilmGrainEffect.js +41 -0
  60. package/dist/wgpuFilmGrainEffect.js.map +1 -0
  61. package/dist/wgpuFxaaEffect.d.ts +4 -0
  62. package/dist/wgpuFxaaEffect.d.ts.map +1 -0
  63. package/dist/wgpuFxaaEffect.js +65 -0
  64. package/dist/wgpuFxaaEffect.js.map +1 -0
  65. package/dist/wgpuGlitchEffect.d.ts +4 -0
  66. package/dist/wgpuGlitchEffect.d.ts.map +1 -0
  67. package/dist/wgpuGlitchEffect.js +60 -0
  68. package/dist/wgpuGlitchEffect.js.map +1 -0
  69. package/dist/wgpuGodRaysEffect.d.ts +4 -0
  70. package/dist/wgpuGodRaysEffect.d.ts.map +1 -0
  71. package/dist/wgpuGodRaysEffect.js +67 -0
  72. package/dist/wgpuGodRaysEffect.js.map +1 -0
  73. package/dist/wgpuGrayscaleEffect.d.ts +4 -0
  74. package/dist/wgpuGrayscaleEffect.d.ts.map +1 -0
  75. package/dist/wgpuGrayscaleEffect.js +27 -0
  76. package/dist/wgpuGrayscaleEffect.js.map +1 -0
  77. package/dist/wgpuHalftoneEffect.d.ts +4 -0
  78. package/dist/wgpuHalftoneEffect.d.ts.map +1 -0
  79. package/dist/wgpuHalftoneEffect.js +45 -0
  80. package/dist/wgpuHalftoneEffect.js.map +1 -0
  81. package/dist/wgpuHueSaturationEffect.d.ts +4 -0
  82. package/dist/wgpuHueSaturationEffect.d.ts.map +1 -0
  83. package/dist/wgpuHueSaturationEffect.js +75 -0
  84. package/dist/wgpuHueSaturationEffect.js.map +1 -0
  85. package/dist/wgpuInvertEffect.d.ts +4 -0
  86. package/dist/wgpuInvertEffect.d.ts.map +1 -0
  87. package/dist/wgpuInvertEffect.js +26 -0
  88. package/dist/wgpuInvertEffect.js.map +1 -0
  89. package/dist/wgpuKuwaharaEffect.d.ts +4 -0
  90. package/dist/wgpuKuwaharaEffect.d.ts.map +1 -0
  91. package/dist/wgpuKuwaharaEffect.js +69 -0
  92. package/dist/wgpuKuwaharaEffect.js.map +1 -0
  93. package/dist/wgpuLensDirtEffect.d.ts +4 -0
  94. package/dist/wgpuLensDirtEffect.d.ts.map +1 -0
  95. package/dist/wgpuLensDirtEffect.js +51 -0
  96. package/dist/wgpuLensDirtEffect.js.map +1 -0
  97. package/dist/wgpuLensDistortionEffect.d.ts +4 -0
  98. package/dist/wgpuLensDistortionEffect.d.ts.map +1 -0
  99. package/dist/wgpuLensDistortionEffect.js +36 -0
  100. package/dist/wgpuLensDistortionEffect.js.map +1 -0
  101. package/dist/wgpuLensFlareEffect.d.ts +4 -0
  102. package/dist/wgpuLensFlareEffect.d.ts.map +1 -0
  103. package/dist/wgpuLensFlareEffect.js +61 -0
  104. package/dist/wgpuLensFlareEffect.js.map +1 -0
  105. package/dist/wgpuLiftGammaGainEffect.d.ts +4 -0
  106. package/dist/wgpuLiftGammaGainEffect.d.ts.map +1 -0
  107. package/dist/wgpuLiftGammaGainEffect.js +51 -0
  108. package/dist/wgpuLiftGammaGainEffect.js.map +1 -0
  109. package/dist/wgpuLookupTableGradeEffect.d.ts +4 -0
  110. package/dist/wgpuLookupTableGradeEffect.d.ts.map +1 -0
  111. package/dist/wgpuLookupTableGradeEffect.js +30 -0
  112. package/dist/wgpuLookupTableGradeEffect.js.map +1 -0
  113. package/dist/wgpuMotionBlurEffect.d.ts +4 -0
  114. package/dist/wgpuMotionBlurEffect.d.ts.map +1 -0
  115. package/dist/wgpuMotionBlurEffect.js +97 -0
  116. package/dist/wgpuMotionBlurEffect.js.map +1 -0
  117. package/dist/wgpuOutlineEffect.d.ts +4 -0
  118. package/dist/wgpuOutlineEffect.d.ts.map +1 -0
  119. package/dist/wgpuOutlineEffect.js +64 -0
  120. package/dist/wgpuOutlineEffect.js.map +1 -0
  121. package/dist/wgpuPixelateEffect.d.ts +4 -0
  122. package/dist/wgpuPixelateEffect.d.ts.map +1 -0
  123. package/dist/wgpuPixelateEffect.js +34 -0
  124. package/dist/wgpuPixelateEffect.js.map +1 -0
  125. package/dist/wgpuPosterizeEffect.d.ts +4 -0
  126. package/dist/wgpuPosterizeEffect.d.ts.map +1 -0
  127. package/dist/wgpuPosterizeEffect.js +27 -0
  128. package/dist/wgpuPosterizeEffect.js.map +1 -0
  129. package/dist/wgpuRadialBlurEffect.d.ts +4 -0
  130. package/dist/wgpuRadialBlurEffect.d.ts.map +1 -0
  131. package/dist/wgpuRadialBlurEffect.js +50 -0
  132. package/dist/wgpuRadialBlurEffect.js.map +1 -0
  133. package/dist/wgpuRenderEffectPipeline.d.ts +7 -0
  134. package/dist/wgpuRenderEffectPipeline.d.ts.map +1 -0
  135. package/dist/wgpuRenderEffectPipeline.js +106 -0
  136. package/dist/wgpuRenderEffectPipeline.js.map +1 -0
  137. package/dist/wgpuRenderEffectRegistrants.d.ts +9 -0
  138. package/dist/wgpuRenderEffectRegistrants.d.ts.map +1 -0
  139. package/dist/wgpuRenderEffectRegistrants.js +129 -0
  140. package/dist/wgpuRenderEffectRegistrants.js.map +1 -0
  141. package/dist/wgpuRenderEffectRegistry.d.ts +5 -0
  142. package/dist/wgpuRenderEffectRegistry.d.ts.map +1 -0
  143. package/dist/wgpuRenderEffectRegistry.js +25 -0
  144. package/dist/wgpuRenderEffectRegistry.js.map +1 -0
  145. package/dist/wgpuScanlinesEffect.d.ts +4 -0
  146. package/dist/wgpuScanlinesEffect.d.ts.map +1 -0
  147. package/dist/wgpuScanlinesEffect.js +32 -0
  148. package/dist/wgpuScanlinesEffect.js.map +1 -0
  149. package/dist/wgpuScreenSpaceFogEffect.d.ts +4 -0
  150. package/dist/wgpuScreenSpaceFogEffect.d.ts.map +1 -0
  151. package/dist/wgpuScreenSpaceFogEffect.js +47 -0
  152. package/dist/wgpuScreenSpaceFogEffect.js.map +1 -0
  153. package/dist/wgpuSepiaEffect.d.ts +4 -0
  154. package/dist/wgpuSepiaEffect.d.ts.map +1 -0
  155. package/dist/wgpuSepiaEffect.js +31 -0
  156. package/dist/wgpuSepiaEffect.js.map +1 -0
  157. package/dist/wgpuSharpenEffect.d.ts +4 -0
  158. package/dist/wgpuSharpenEffect.d.ts.map +1 -0
  159. package/dist/wgpuSharpenEffect.js +40 -0
  160. package/dist/wgpuSharpenEffect.js.map +1 -0
  161. package/dist/wgpuSketchEffect.d.ts +4 -0
  162. package/dist/wgpuSketchEffect.d.ts.map +1 -0
  163. package/dist/wgpuSketchEffect.js +51 -0
  164. package/dist/wgpuSketchEffect.js.map +1 -0
  165. package/dist/wgpuSmaaEffect.d.ts +4 -0
  166. package/dist/wgpuSmaaEffect.d.ts.map +1 -0
  167. package/dist/wgpuSmaaEffect.js +52 -0
  168. package/dist/wgpuSmaaEffect.js.map +1 -0
  169. package/dist/wgpuSsaoEffect.d.ts +4 -0
  170. package/dist/wgpuSsaoEffect.d.ts.map +1 -0
  171. package/dist/wgpuSsaoEffect.js +51 -0
  172. package/dist/wgpuSsaoEffect.js.map +1 -0
  173. package/dist/wgpuSsrEffect.d.ts +4 -0
  174. package/dist/wgpuSsrEffect.d.ts.map +1 -0
  175. package/dist/wgpuSsrEffect.js +28 -0
  176. package/dist/wgpuSsrEffect.js.map +1 -0
  177. package/dist/wgpuTaaEffect.d.ts +4 -0
  178. package/dist/wgpuTaaEffect.d.ts.map +1 -0
  179. package/dist/wgpuTaaEffect.js +27 -0
  180. package/dist/wgpuTaaEffect.js.map +1 -0
  181. package/dist/wgpuTiltShiftEffect.d.ts +4 -0
  182. package/dist/wgpuTiltShiftEffect.d.ts.map +1 -0
  183. package/dist/wgpuTiltShiftEffect.js +51 -0
  184. package/dist/wgpuTiltShiftEffect.js.map +1 -0
  185. package/dist/wgpuToneMapEffect.d.ts +4 -0
  186. package/dist/wgpuToneMapEffect.d.ts.map +1 -0
  187. package/dist/wgpuToneMapEffect.js +57 -0
  188. package/dist/wgpuToneMapEffect.js.map +1 -0
  189. package/dist/wgpuVignetteEffect.d.ts +4 -0
  190. package/dist/wgpuVignetteEffect.d.ts.map +1 -0
  191. package/dist/wgpuVignetteEffect.js +54 -0
  192. package/dist/wgpuVignetteEffect.js.map +1 -0
  193. package/dist/wgpuWhiteBalanceEffect.d.ts +4 -0
  194. package/dist/wgpuWhiteBalanceEffect.d.ts.map +1 -0
  195. package/dist/wgpuWhiteBalanceEffect.js +32 -0
  196. package/dist/wgpuWhiteBalanceEffect.js.map +1 -0
  197. package/package.json +42 -0
  198. package/src/wgpuBloomEffect.test.ts +13 -0
  199. package/src/wgpuBokehDepthOfFieldEffect.test.ts +16 -0
  200. package/src/wgpuBrightnessContrastEffect.test.ts +16 -0
  201. package/src/wgpuCameraMotionBlurEffect.test.ts +16 -0
  202. package/src/wgpuChannelMixerEffect.test.ts +13 -0
  203. package/src/wgpuChromaticAberrationEffect.test.ts +16 -0
  204. package/src/wgpuColorGradeEffect.test.ts +13 -0
  205. package/src/wgpuCrtEffect.test.ts +13 -0
  206. package/src/wgpuDirectionalBlurEffect.test.ts +13 -0
  207. package/src/wgpuDisplacementEffect.test.ts +13 -0
  208. package/src/wgpuDitherEffect.test.ts +13 -0
  209. package/src/wgpuEffectProgramCache.test.ts +7 -0
  210. package/src/wgpuExposureEffect.test.ts +13 -0
  211. package/src/wgpuFilmGrainEffect.test.ts +13 -0
  212. package/src/wgpuFxaaEffect.test.ts +13 -0
  213. package/src/wgpuGlitchEffect.test.ts +13 -0
  214. package/src/wgpuGodRaysEffect.test.ts +13 -0
  215. package/src/wgpuGrayscaleEffect.test.ts +13 -0
  216. package/src/wgpuHalftoneEffect.test.ts +13 -0
  217. package/src/wgpuHueSaturationEffect.test.ts +13 -0
  218. package/src/wgpuInvertEffect.test.ts +13 -0
  219. package/src/wgpuKuwaharaEffect.test.ts +13 -0
  220. package/src/wgpuLensDirtEffect.test.ts +13 -0
  221. package/src/wgpuLensDistortionEffect.test.ts +13 -0
  222. package/src/wgpuLensFlareEffect.test.ts +13 -0
  223. package/src/wgpuLiftGammaGainEffect.test.ts +13 -0
  224. package/src/wgpuLookupTableGradeEffect.test.ts +16 -0
  225. package/src/wgpuMotionBlurEffect.test.ts +13 -0
  226. package/src/wgpuOutlineEffect.test.ts +13 -0
  227. package/src/wgpuPixelateEffect.test.ts +13 -0
  228. package/src/wgpuPosterizeEffect.test.ts +13 -0
  229. package/src/wgpuRadialBlurEffect.test.ts +13 -0
  230. package/src/wgpuRenderEffectPipeline.test.ts +45 -0
  231. package/src/wgpuRenderEffectRegistrants.test.ts +122 -0
  232. package/src/wgpuRenderEffectRegistry.test.ts +40 -0
  233. package/src/wgpuScanlinesEffect.test.ts +13 -0
  234. package/src/wgpuScreenSpaceFogEffect.test.ts +13 -0
  235. package/src/wgpuSepiaEffect.test.ts +13 -0
  236. package/src/wgpuSharpenEffect.test.ts +13 -0
  237. package/src/wgpuSketchEffect.test.ts +13 -0
  238. package/src/wgpuSmaaEffect.test.ts +13 -0
  239. package/src/wgpuSsaoEffect.test.ts +13 -0
  240. package/src/wgpuSsrEffect.test.ts +13 -0
  241. package/src/wgpuTaaEffect.test.ts +13 -0
  242. package/src/wgpuTiltShiftEffect.test.ts +13 -0
  243. package/src/wgpuToneMapEffect.test.ts +13 -0
  244. package/src/wgpuVignetteEffect.test.ts +13 -0
  245. package/src/wgpuWhiteBalanceEffect.test.ts +13 -0
@@ -0,0 +1,13 @@
1
+ import { applyLensDistortionEffectToWgpu, defaultWgpuLensDistortionEffectRunner } from './wgpuLensDistortionEffect';
2
+
3
+ describe('applyLensDistortionEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyLensDistortionEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuLensDistortionEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuLensDistortionEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyLensFlareEffectToWgpu, defaultWgpuLensFlareEffectRunner } from './wgpuLensFlareEffect';
2
+
3
+ describe('applyLensFlareEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyLensFlareEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuLensFlareEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuLensFlareEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyLiftGammaGainEffectToWgpu, defaultWgpuLiftGammaGainEffectRunner } from './wgpuLiftGammaGainEffect';
2
+
3
+ describe('applyLiftGammaGainEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyLiftGammaGainEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuLiftGammaGainEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuLiftGammaGainEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,16 @@
1
+ import {
2
+ applyLookupTableGradeEffectToWgpu,
3
+ defaultWgpuLookupTableGradeEffectRunner,
4
+ } from './wgpuLookupTableGradeEffect';
5
+
6
+ describe('applyLookupTableGradeEffectToWgpu', () => {
7
+ it('is a function', () => {
8
+ expect(typeof applyLookupTableGradeEffectToWgpu).toBe('function');
9
+ });
10
+ });
11
+
12
+ describe('defaultWgpuLookupTableGradeEffectRunner', () => {
13
+ it('is a function', () => {
14
+ expect(typeof defaultWgpuLookupTableGradeEffectRunner).toBe('function');
15
+ });
16
+ });
@@ -0,0 +1,13 @@
1
+ import { applyMotionBlurEffectToWgpu, defaultWgpuMotionBlurEffectRunner } from './wgpuMotionBlurEffect';
2
+
3
+ describe('applyMotionBlurEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyMotionBlurEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuMotionBlurEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuMotionBlurEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyOutlineEffectToWgpu, defaultWgpuOutlineEffectRunner } from './wgpuOutlineEffect';
2
+
3
+ describe('applyOutlineEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyOutlineEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuOutlineEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuOutlineEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyPixelateEffectToWgpu, defaultWgpuPixelateEffectRunner } from './wgpuPixelateEffect';
2
+
3
+ describe('applyPixelateEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyPixelateEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuPixelateEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuPixelateEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyPosterizeEffectToWgpu, defaultWgpuPosterizeEffectRunner } from './wgpuPosterizeEffect';
2
+
3
+ describe('applyPosterizeEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyPosterizeEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuPosterizeEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuPosterizeEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyRadialBlurEffectToWgpu, defaultWgpuRadialBlurEffectRunner } from './wgpuRadialBlurEffect';
2
+
3
+ describe('applyRadialBlurEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyRadialBlurEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuRadialBlurEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuRadialBlurEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,45 @@
1
+ import {
2
+ beginWgpuRenderEffectPipeline,
3
+ createWgpuRenderEffectPipeline,
4
+ destroyWgpuRenderEffectPipeline,
5
+ endWgpuRenderEffectPipeline,
6
+ setWgpuRenderEffectVelocityTexture,
7
+ } from './wgpuRenderEffectPipeline';
8
+
9
+ describe('beginWgpuRenderEffectPipeline', () => {
10
+ it('is a function', () => {
11
+ expect(typeof beginWgpuRenderEffectPipeline).toBe('function');
12
+ });
13
+ });
14
+
15
+ describe('createWgpuRenderEffectPipeline', () => {
16
+ it('is a function', () => {
17
+ expect(typeof createWgpuRenderEffectPipeline).toBe('function');
18
+ });
19
+ });
20
+
21
+ describe('destroyWgpuRenderEffectPipeline', () => {
22
+ it('is a function', () => {
23
+ expect(typeof destroyWgpuRenderEffectPipeline).toBe('function');
24
+ });
25
+ });
26
+
27
+ describe('endWgpuRenderEffectPipeline', () => {
28
+ it('is a function', () => {
29
+ expect(typeof endWgpuRenderEffectPipeline).toBe('function');
30
+ });
31
+ });
32
+
33
+ describe('setWgpuRenderEffectVelocityTexture', () => {
34
+ it('sets the velocity texture on the pipeline', () => {
35
+ const pipeline = {
36
+ options: {},
37
+ sceneTarget: null,
38
+ pool: { free: [] },
39
+ velocityTexture: null,
40
+ };
41
+ const texture = {} as GPUTexture;
42
+ setWgpuRenderEffectVelocityTexture(pipeline, texture);
43
+ expect(pipeline.velocityTexture).toBe(texture);
44
+ });
45
+ });
@@ -0,0 +1,122 @@
1
+ import { createWgpuRenderStateForTest, installWgpuMock } from '@flighthq/render-wgpu';
2
+
3
+ import {
4
+ registerAntialiasingWgpuRenderEffects,
5
+ registerBloomWgpuRenderEffects,
6
+ registerBlurWgpuRenderEffects,
7
+ registerColorWgpuRenderEffects,
8
+ registerScreenSpaceWgpuRenderEffects,
9
+ registerStandardWgpuRenderEffects,
10
+ registerStylizeWgpuRenderEffects,
11
+ } from './wgpuRenderEffectRegistrants';
12
+ import { getWgpuRenderEffectRunner } from './wgpuRenderEffectRegistry';
13
+
14
+ beforeAll(() => {
15
+ installWgpuMock();
16
+ });
17
+
18
+ describe('registerAntialiasingWgpuRenderEffects', () => {
19
+ it('registers FxaaEffect, SmaaEffect, and TaaEffect runners', async () => {
20
+ const state = await createWgpuRenderStateForTest();
21
+ registerAntialiasingWgpuRenderEffects(state);
22
+ expect(getWgpuRenderEffectRunner(state, 'FxaaEffect')).not.toBe(null);
23
+ expect(getWgpuRenderEffectRunner(state, 'SmaaEffect')).not.toBe(null);
24
+ expect(getWgpuRenderEffectRunner(state, 'TaaEffect')).not.toBe(null);
25
+ });
26
+ });
27
+
28
+ describe('registerBloomWgpuRenderEffects', () => {
29
+ it('registers all bloom and optical effect runners', async () => {
30
+ const state = await createWgpuRenderStateForTest();
31
+ registerBloomWgpuRenderEffects(state);
32
+ expect(getWgpuRenderEffectRunner(state, 'BloomEffect')).not.toBe(null);
33
+ expect(getWgpuRenderEffectRunner(state, 'ChromaticAberrationEffect')).not.toBe(null);
34
+ expect(getWgpuRenderEffectRunner(state, 'GodRaysEffect')).not.toBe(null);
35
+ expect(getWgpuRenderEffectRunner(state, 'LensDirtEffect')).not.toBe(null);
36
+ expect(getWgpuRenderEffectRunner(state, 'LensDistortionEffect')).not.toBe(null);
37
+ expect(getWgpuRenderEffectRunner(state, 'LensFlareEffect')).not.toBe(null);
38
+ expect(getWgpuRenderEffectRunner(state, 'VignetteEffect')).not.toBe(null);
39
+ });
40
+ });
41
+
42
+ describe('registerBlurWgpuRenderEffects', () => {
43
+ it('registers all blur effect runners', async () => {
44
+ const state = await createWgpuRenderStateForTest();
45
+ registerBlurWgpuRenderEffects(state);
46
+ expect(getWgpuRenderEffectRunner(state, 'BokehDepthOfFieldEffect')).not.toBe(null);
47
+ expect(getWgpuRenderEffectRunner(state, 'CameraMotionBlurEffect')).not.toBe(null);
48
+ expect(getWgpuRenderEffectRunner(state, 'DirectionalBlurEffect')).not.toBe(null);
49
+ expect(getWgpuRenderEffectRunner(state, 'MotionBlurEffect')).not.toBe(null);
50
+ expect(getWgpuRenderEffectRunner(state, 'RadialBlurEffect')).not.toBe(null);
51
+ expect(getWgpuRenderEffectRunner(state, 'TiltShiftEffect')).not.toBe(null);
52
+ });
53
+ });
54
+
55
+ describe('registerColorWgpuRenderEffects', () => {
56
+ it('registers all color and tone effect runners', async () => {
57
+ const state = await createWgpuRenderStateForTest();
58
+ registerColorWgpuRenderEffects(state);
59
+ expect(getWgpuRenderEffectRunner(state, 'BrightnessContrastEffect')).not.toBe(null);
60
+ expect(getWgpuRenderEffectRunner(state, 'ChannelMixerEffect')).not.toBe(null);
61
+ expect(getWgpuRenderEffectRunner(state, 'ColorGradeEffect')).not.toBe(null);
62
+ expect(getWgpuRenderEffectRunner(state, 'ExposureEffect')).not.toBe(null);
63
+ expect(getWgpuRenderEffectRunner(state, 'GrayscaleEffect')).not.toBe(null);
64
+ expect(getWgpuRenderEffectRunner(state, 'HueSaturationEffect')).not.toBe(null);
65
+ expect(getWgpuRenderEffectRunner(state, 'InvertEffect')).not.toBe(null);
66
+ expect(getWgpuRenderEffectRunner(state, 'LiftGammaGainEffect')).not.toBe(null);
67
+ expect(getWgpuRenderEffectRunner(state, 'LookupTableGradeEffect')).not.toBe(null);
68
+ expect(getWgpuRenderEffectRunner(state, 'PosterizeEffect')).not.toBe(null);
69
+ expect(getWgpuRenderEffectRunner(state, 'SepiaEffect')).not.toBe(null);
70
+ expect(getWgpuRenderEffectRunner(state, 'ToneMapEffect')).not.toBe(null);
71
+ expect(getWgpuRenderEffectRunner(state, 'WhiteBalanceEffect')).not.toBe(null);
72
+ });
73
+ });
74
+
75
+ describe('registerScreenSpaceWgpuRenderEffects', () => {
76
+ it('registers all screen-space and atmospheric effect runners', async () => {
77
+ const state = await createWgpuRenderStateForTest();
78
+ registerScreenSpaceWgpuRenderEffects(state);
79
+ expect(getWgpuRenderEffectRunner(state, 'DisplacementEffect')).not.toBe(null);
80
+ expect(getWgpuRenderEffectRunner(state, 'ScreenSpaceFogEffect')).not.toBe(null);
81
+ expect(getWgpuRenderEffectRunner(state, 'SharpenEffect')).not.toBe(null);
82
+ expect(getWgpuRenderEffectRunner(state, 'SsaoEffect')).not.toBe(null);
83
+ expect(getWgpuRenderEffectRunner(state, 'SsrEffect')).not.toBe(null);
84
+ });
85
+ });
86
+
87
+ describe('registerStandardWgpuRenderEffects', () => {
88
+ it('registers all 45 standard effect runners', async () => {
89
+ const state = await createWgpuRenderStateForTest();
90
+ registerStandardWgpuRenderEffects(state);
91
+ // Spot-check one from each band.
92
+ expect(getWgpuRenderEffectRunner(state, 'FxaaEffect')).not.toBe(null);
93
+ expect(getWgpuRenderEffectRunner(state, 'BloomEffect')).not.toBe(null);
94
+ expect(getWgpuRenderEffectRunner(state, 'DirectionalBlurEffect')).not.toBe(null);
95
+ expect(getWgpuRenderEffectRunner(state, 'GrayscaleEffect')).not.toBe(null);
96
+ expect(getWgpuRenderEffectRunner(state, 'SsaoEffect')).not.toBe(null);
97
+ expect(getWgpuRenderEffectRunner(state, 'HalftoneEffect')).not.toBe(null);
98
+ });
99
+
100
+ it('does not register runners for unknown kinds', async () => {
101
+ const state = await createWgpuRenderStateForTest();
102
+ registerStandardWgpuRenderEffects(state);
103
+ expect(getWgpuRenderEffectRunner(state, 'acme.UnknownEffect')).toBe(null);
104
+ });
105
+ });
106
+
107
+ describe('registerStylizeWgpuRenderEffects', () => {
108
+ it('registers all stylize effect runners', async () => {
109
+ const state = await createWgpuRenderStateForTest();
110
+ registerStylizeWgpuRenderEffects(state);
111
+ expect(getWgpuRenderEffectRunner(state, 'CrtEffect')).not.toBe(null);
112
+ expect(getWgpuRenderEffectRunner(state, 'DitherEffect')).not.toBe(null);
113
+ expect(getWgpuRenderEffectRunner(state, 'FilmGrainEffect')).not.toBe(null);
114
+ expect(getWgpuRenderEffectRunner(state, 'GlitchEffect')).not.toBe(null);
115
+ expect(getWgpuRenderEffectRunner(state, 'HalftoneEffect')).not.toBe(null);
116
+ expect(getWgpuRenderEffectRunner(state, 'KuwaharaEffect')).not.toBe(null);
117
+ expect(getWgpuRenderEffectRunner(state, 'OutlineEffect')).not.toBe(null);
118
+ expect(getWgpuRenderEffectRunner(state, 'PixelateEffect')).not.toBe(null);
119
+ expect(getWgpuRenderEffectRunner(state, 'ScanlinesEffect')).not.toBe(null);
120
+ expect(getWgpuRenderEffectRunner(state, 'SketchEffect')).not.toBe(null);
121
+ });
122
+ });
@@ -0,0 +1,40 @@
1
+ import { createWgpuRenderStateForTest, installWgpuMock } from '@flighthq/render-wgpu';
2
+
3
+ import {
4
+ getWgpuRenderEffectRunner,
5
+ hasWgpuRenderEffectRunner,
6
+ registerWgpuRenderEffect,
7
+ } from './wgpuRenderEffectRegistry';
8
+
9
+ beforeAll(() => {
10
+ installWgpuMock();
11
+ });
12
+
13
+ describe('getWgpuRenderEffectRunner', () => {
14
+ it('returns null when no runner is registered for the kind', async () => {
15
+ const state = await createWgpuRenderStateForTest();
16
+ expect(getWgpuRenderEffectRunner(state, 'VignetteEffect')).toBe(null);
17
+ });
18
+ });
19
+
20
+ describe('hasWgpuRenderEffectRunner', () => {
21
+ it('returns false when no runner is registered for the kind', async () => {
22
+ const state = await createWgpuRenderStateForTest();
23
+ expect(hasWgpuRenderEffectRunner(state, 'VignetteEffect')).toBe(false);
24
+ });
25
+
26
+ it('returns true after a runner is registered for the kind', async () => {
27
+ const state = await createWgpuRenderStateForTest();
28
+ registerWgpuRenderEffect(state, 'VignetteEffect', vi.fn());
29
+ expect(hasWgpuRenderEffectRunner(state, 'VignetteEffect')).toBe(true);
30
+ });
31
+ });
32
+
33
+ describe('registerWgpuRenderEffect', () => {
34
+ it('registers a runner retrievable by its kind', async () => {
35
+ const state = await createWgpuRenderStateForTest();
36
+ const runner = vi.fn();
37
+ registerWgpuRenderEffect(state, 'VignetteEffect', runner);
38
+ expect(getWgpuRenderEffectRunner(state, 'VignetteEffect')).toBe(runner);
39
+ });
40
+ });
@@ -0,0 +1,13 @@
1
+ import { applyScanlinesEffectToWgpu, defaultWgpuScanlinesEffectRunner } from './wgpuScanlinesEffect';
2
+
3
+ describe('applyScanlinesEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyScanlinesEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuScanlinesEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuScanlinesEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyScreenSpaceFogEffectToWgpu, defaultWgpuScreenSpaceFogEffectRunner } from './wgpuScreenSpaceFogEffect';
2
+
3
+ describe('applyScreenSpaceFogEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyScreenSpaceFogEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuScreenSpaceFogEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuScreenSpaceFogEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applySepiaEffectToWgpu, defaultWgpuSepiaEffectRunner } from './wgpuSepiaEffect';
2
+
3
+ describe('applySepiaEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applySepiaEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuSepiaEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuSepiaEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applySharpenEffectToWgpu, defaultWgpuSharpenEffectRunner } from './wgpuSharpenEffect';
2
+
3
+ describe('applySharpenEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applySharpenEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuSharpenEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuSharpenEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applySketchEffectToWgpu, defaultWgpuSketchEffectRunner } from './wgpuSketchEffect';
2
+
3
+ describe('applySketchEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applySketchEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuSketchEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuSketchEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applySmaaEffectToWgpu, defaultWgpuSmaaEffectRunner } from './wgpuSmaaEffect';
2
+
3
+ describe('applySmaaEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applySmaaEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuSmaaEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuSmaaEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applySsaoEffectToWgpu, defaultWgpuSsaoEffectRunner } from './wgpuSsaoEffect';
2
+
3
+ describe('applySsaoEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applySsaoEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuSsaoEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuSsaoEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applySsrEffectToWgpu, defaultWgpuSsrEffectRunner } from './wgpuSsrEffect';
2
+
3
+ describe('applySsrEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applySsrEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuSsrEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuSsrEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyTaaEffectToWgpu, defaultWgpuTaaEffectRunner } from './wgpuTaaEffect';
2
+
3
+ describe('applyTaaEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyTaaEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuTaaEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuTaaEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyTiltShiftEffectToWgpu, defaultWgpuTiltShiftEffectRunner } from './wgpuTiltShiftEffect';
2
+
3
+ describe('applyTiltShiftEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyTiltShiftEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuTiltShiftEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuTiltShiftEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyToneMapEffectToWgpu, defaultWgpuToneMapEffectRunner } from './wgpuToneMapEffect';
2
+
3
+ describe('applyToneMapEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyToneMapEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuToneMapEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuToneMapEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyVignetteEffectToWgpu, defaultWgpuVignetteEffectRunner } from './wgpuVignetteEffect';
2
+
3
+ describe('applyVignetteEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyVignetteEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuVignetteEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuVignetteEffectRunner).toBe('function');
12
+ });
13
+ });
@@ -0,0 +1,13 @@
1
+ import { applyWhiteBalanceEffectToWgpu, defaultWgpuWhiteBalanceEffectRunner } from './wgpuWhiteBalanceEffect';
2
+
3
+ describe('applyWhiteBalanceEffectToWgpu', () => {
4
+ it('is a function', () => {
5
+ expect(typeof applyWhiteBalanceEffectToWgpu).toBe('function');
6
+ });
7
+ });
8
+
9
+ describe('defaultWgpuWhiteBalanceEffectRunner', () => {
10
+ it('is a function', () => {
11
+ expect(typeof defaultWgpuWhiteBalanceEffectRunner).toBe('function');
12
+ });
13
+ });