@flighthq/effects 0.1.0 → 0.2.1-next.410.a23f189

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 (168) hide show
  1. package/dist/bevelEffect.d.ts +3 -0
  2. package/dist/bevelEffect.d.ts.map +1 -0
  3. package/dist/bevelEffect.js +5 -0
  4. package/dist/bevelEffect.js.map +1 -0
  5. package/dist/blendEffect.d.ts +3 -0
  6. package/dist/blendEffect.d.ts.map +1 -0
  7. package/dist/blendEffect.js +10 -0
  8. package/dist/blendEffect.js.map +1 -0
  9. package/dist/blendModeMath.d.ts +6 -0
  10. package/dist/blendModeMath.d.ts.map +1 -0
  11. package/dist/blendModeMath.js +172 -0
  12. package/dist/blendModeMath.js.map +1 -0
  13. package/dist/blurDownsample.d.ts +17 -0
  14. package/dist/blurDownsample.d.ts.map +1 -0
  15. package/dist/blurDownsample.js +35 -0
  16. package/dist/blurDownsample.js.map +1 -0
  17. package/dist/blurEffect.d.ts +3 -0
  18. package/dist/blurEffect.d.ts.map +1 -0
  19. package/dist/blurEffect.js +7 -0
  20. package/dist/blurEffect.js.map +1 -0
  21. package/dist/boxBlurMath.d.ts +27 -0
  22. package/dist/boxBlurMath.d.ts.map +1 -0
  23. package/dist/boxBlurMath.js +64 -0
  24. package/dist/boxBlurMath.js.map +1 -0
  25. package/dist/compositeEffect.d.ts +3 -0
  26. package/dist/compositeEffect.d.ts.map +1 -0
  27. package/dist/compositeEffect.js +10 -0
  28. package/dist/compositeEffect.js.map +1 -0
  29. package/dist/compositeOperatorMath.d.ts +3 -0
  30. package/dist/compositeOperatorMath.d.ts.map +1 -0
  31. package/dist/compositeOperatorMath.js +65 -0
  32. package/dist/compositeOperatorMath.js.map +1 -0
  33. package/dist/convolutionEffect.d.ts +3 -0
  34. package/dist/convolutionEffect.d.ts.map +1 -0
  35. package/dist/convolutionEffect.js +4 -0
  36. package/dist/convolutionEffect.js.map +1 -0
  37. package/dist/dropShadowEffect.d.ts +3 -0
  38. package/dist/dropShadowEffect.d.ts.map +1 -0
  39. package/dist/dropShadowEffect.js +5 -0
  40. package/dist/dropShadowEffect.js.map +1 -0
  41. package/dist/gaussianKernel.d.ts +17 -0
  42. package/dist/gaussianKernel.d.ts.map +1 -0
  43. package/dist/gaussianKernel.js +49 -0
  44. package/dist/gaussianKernel.js.map +1 -0
  45. package/dist/gradientBevelEffect.d.ts +3 -0
  46. package/dist/gradientBevelEffect.d.ts.map +1 -0
  47. package/dist/gradientBevelEffect.js +5 -0
  48. package/dist/gradientBevelEffect.js.map +1 -0
  49. package/dist/gradientGlowEffect.d.ts +3 -0
  50. package/dist/gradientGlowEffect.d.ts.map +1 -0
  51. package/dist/gradientGlowEffect.js +5 -0
  52. package/dist/gradientGlowEffect.js.map +1 -0
  53. package/dist/index.d.ts +18 -13
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +18 -13
  56. package/dist/index.js.map +1 -1
  57. package/dist/innerGlowEffect.d.ts +3 -0
  58. package/dist/innerGlowEffect.d.ts.map +1 -0
  59. package/dist/innerGlowEffect.js +5 -0
  60. package/dist/innerGlowEffect.js.map +1 -0
  61. package/dist/innerShadowEffect.d.ts +3 -0
  62. package/dist/innerShadowEffect.d.ts.map +1 -0
  63. package/dist/innerShadowEffect.js +5 -0
  64. package/dist/innerShadowEffect.js.map +1 -0
  65. package/dist/linearSampledGaussian.d.ts +22 -0
  66. package/dist/linearSampledGaussian.d.ts.map +1 -0
  67. package/dist/linearSampledGaussian.js +56 -0
  68. package/dist/linearSampledGaussian.js.map +1 -0
  69. package/dist/medianEffect.d.ts +3 -0
  70. package/dist/medianEffect.d.ts.map +1 -0
  71. package/dist/medianEffect.js +4 -0
  72. package/dist/medianEffect.js.map +1 -0
  73. package/dist/outerGlowEffect.d.ts +3 -0
  74. package/dist/outerGlowEffect.d.ts.map +1 -0
  75. package/dist/outerGlowEffect.js +5 -0
  76. package/dist/outerGlowEffect.js.map +1 -0
  77. package/dist/renderEffectDefaults.js +51 -20
  78. package/dist/renderEffectDefaults.js.map +1 -1
  79. package/dist/renderEffectInputs.js +11 -11
  80. package/dist/renderEffectInputs.js.map +1 -1
  81. package/package.json +7 -2
  82. package/src/bevelEffect.test.ts +14 -0
  83. package/src/blendEffect.test.ts +23 -0
  84. package/src/blendModeMath.test.ts +160 -0
  85. package/src/blurDownsample.test.ts +46 -0
  86. package/src/blurEffect.test.ts +17 -0
  87. package/src/boxBlurMath.test.ts +96 -0
  88. package/src/compositeEffect.test.ts +21 -0
  89. package/src/compositeOperatorMath.test.ts +45 -0
  90. package/src/convolutionEffect.test.ts +20 -0
  91. package/src/dropShadowEffect.test.ts +14 -0
  92. package/src/gaussianKernel.test.ts +80 -0
  93. package/src/gradientBevelEffect.test.ts +21 -0
  94. package/src/gradientGlowEffect.test.ts +21 -0
  95. package/src/innerGlowEffect.test.ts +15 -0
  96. package/src/innerShadowEffect.test.ts +15 -0
  97. package/src/linearSampledGaussian.test.ts +87 -0
  98. package/src/medianEffect.test.ts +11 -0
  99. package/src/outerGlowEffect.test.ts +14 -0
  100. package/src/renderEffectDefaults.test.ts +13 -5
  101. package/src/renderEffectInputs.test.ts +3 -5
  102. package/src/renderEffectInterpolation.test.ts +6 -9
  103. package/src/renderEffectValidation.test.ts +2 -2
  104. package/dist/brightnessContrastEffect.d.ts +0 -3
  105. package/dist/brightnessContrastEffect.d.ts.map +0 -1
  106. package/dist/brightnessContrastEffect.js +0 -4
  107. package/dist/brightnessContrastEffect.js.map +0 -1
  108. package/dist/channelMixerEffect.d.ts +0 -3
  109. package/dist/channelMixerEffect.d.ts.map +0 -1
  110. package/dist/channelMixerEffect.js +0 -4
  111. package/dist/channelMixerEffect.js.map +0 -1
  112. package/dist/colorBlindSimulationEffect.d.ts +0 -3
  113. package/dist/colorBlindSimulationEffect.d.ts.map +0 -1
  114. package/dist/colorBlindSimulationEffect.js +0 -4
  115. package/dist/colorBlindSimulationEffect.js.map +0 -1
  116. package/dist/colorGradeEffect.d.ts +0 -3
  117. package/dist/colorGradeEffect.d.ts.map +0 -1
  118. package/dist/colorGradeEffect.js +0 -4
  119. package/dist/colorGradeEffect.js.map +0 -1
  120. package/dist/colorScienceMath.d.ts +0 -9
  121. package/dist/colorScienceMath.d.ts.map +0 -1
  122. package/dist/colorScienceMath.js +0 -135
  123. package/dist/colorScienceMath.js.map +0 -1
  124. package/dist/exposureEffect.d.ts +0 -3
  125. package/dist/exposureEffect.d.ts.map +0 -1
  126. package/dist/exposureEffect.js +0 -4
  127. package/dist/exposureEffect.js.map +0 -1
  128. package/dist/grayscaleEffect.d.ts +0 -3
  129. package/dist/grayscaleEffect.d.ts.map +0 -1
  130. package/dist/grayscaleEffect.js +0 -4
  131. package/dist/grayscaleEffect.js.map +0 -1
  132. package/dist/hueSaturationEffect.d.ts +0 -3
  133. package/dist/hueSaturationEffect.d.ts.map +0 -1
  134. package/dist/hueSaturationEffect.js +0 -4
  135. package/dist/hueSaturationEffect.js.map +0 -1
  136. package/dist/invertEffect.d.ts +0 -3
  137. package/dist/invertEffect.d.ts.map +0 -1
  138. package/dist/invertEffect.js +0 -4
  139. package/dist/invertEffect.js.map +0 -1
  140. package/dist/liftGammaGainEffect.d.ts +0 -3
  141. package/dist/liftGammaGainEffect.d.ts.map +0 -1
  142. package/dist/liftGammaGainEffect.js +0 -4
  143. package/dist/liftGammaGainEffect.js.map +0 -1
  144. package/dist/lookupTableGradeEffect.d.ts +0 -3
  145. package/dist/lookupTableGradeEffect.d.ts.map +0 -1
  146. package/dist/lookupTableGradeEffect.js +0 -4
  147. package/dist/lookupTableGradeEffect.js.map +0 -1
  148. package/dist/lutMath.d.ts +0 -7
  149. package/dist/lutMath.d.ts.map +0 -1
  150. package/dist/lutMath.js +0 -39
  151. package/dist/lutMath.js.map +0 -1
  152. package/dist/sepiaEffect.d.ts +0 -3
  153. package/dist/sepiaEffect.d.ts.map +0 -1
  154. package/dist/sepiaEffect.js +0 -4
  155. package/dist/sepiaEffect.js.map +0 -1
  156. package/src/brightnessContrastEffect.test.ts +0 -14
  157. package/src/channelMixerEffect.test.ts +0 -12
  158. package/src/colorBlindSimulationEffect.test.ts +0 -13
  159. package/src/colorGradeEffect.test.ts +0 -11
  160. package/src/colorScienceMath.test.ts +0 -160
  161. package/src/exposureEffect.test.ts +0 -7
  162. package/src/grayscaleEffect.test.ts +0 -11
  163. package/src/hueSaturationEffect.test.ts +0 -15
  164. package/src/invertEffect.test.ts +0 -11
  165. package/src/liftGammaGainEffect.test.ts +0 -15
  166. package/src/lookupTableGradeEffect.test.ts +0 -11
  167. package/src/lutMath.test.ts +0 -67
  168. package/src/sepiaEffect.test.ts +0 -11
@@ -0,0 +1,49 @@
1
+ // Discrete Gaussian kernel weights. Substrate-agnostic recipe math shared by the CPU/GPU blur passes.
2
+ //
3
+ // Copied verbatim from filters-math during the filters→effects migration — effects is the
4
+ // canonical home for the spatial-effect blur math (effect-adjustment-architecture.md, migration
5
+ // step 4). filters-math keeps its copy until the filters* packages retire; the duplicate is
6
+ // deliberate for the duration (mirrors the Phase 1 colorMatrixMath port).
7
+ /**
8
+ * Fills `out` with the 1D discrete Gaussian kernel weights for standard deviation `sigma`,
9
+ * normalized so the emitted weights sum to exactly 1. The kernel is symmetric with `out.length`
10
+ * set to `getGaussianKernelSize(sigma)` (an odd length), the center entry the largest. Because the
11
+ * kernel is truncated at radius `ceil(3 * sigma)`, the raw Gaussian samples are renormalized by
12
+ * their own truncated sum rather than the analytic 1/(sqrt(2π)·sigma) factor, so the discrete tail
13
+ * loss is absorbed and the taps a separable blur applies sum to 1. `sigma <= 0` yields a single
14
+ * unit weight (`[1]`), the identity kernel. Returns `out`.
15
+ */
16
+ export function computeGaussianKernelWeights(sigma, out) {
17
+ const size = getGaussianKernelSize(sigma);
18
+ out.length = size;
19
+ if (size === 1) {
20
+ out[0] = 1;
21
+ return out;
22
+ }
23
+ const radius = (size - 1) / 2;
24
+ const twoSigmaSquared = 2 * sigma * sigma;
25
+ let sum = 0;
26
+ for (let i = 0; i < size; i++) {
27
+ const x = i - radius;
28
+ const weight = Math.exp(-(x * x) / twoSigmaSquared);
29
+ out[i] = weight;
30
+ sum += weight;
31
+ }
32
+ const inverseSum = 1 / sum;
33
+ for (let i = 0; i < size; i++) {
34
+ out[i] *= inverseSum;
35
+ }
36
+ return out;
37
+ }
38
+ /**
39
+ * Returns the length of the discrete Gaussian kernel for standard deviation `sigma`: the odd count
40
+ * `radius * 2 + 1` where `radius = ceil(3 * sigma)`. Three standard deviations capture ~99.7% of the
41
+ * Gaussian mass, the conventional truncation point. `sigma <= 0` returns 1 (the identity kernel).
42
+ */
43
+ export function getGaussianKernelSize(sigma) {
44
+ if (sigma <= 0)
45
+ return 1;
46
+ const radius = Math.ceil(3 * sigma);
47
+ return radius * 2 + 1;
48
+ }
49
+ //# sourceMappingURL=gaussianKernel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gaussianKernel.js","sourceRoot":"","sources":["../src/gaussianKernel.ts"],"names":[],"mappings":"AAAA,sGAAsG;AACtG,EAAE;AACF,0FAA0F;AAC1F,gGAAgG;AAChG,4FAA4F;AAC5F,0EAA0E;AAE1E;;;;;;;;GAQG;AACH,MAAM,UAAU,4BAA4B,CAAC,KAAa,EAAE,GAAa;IACvE,MAAM,IAAI,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACf,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,OAAO,GAAG,CAAC;IACb,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,eAAe,GAAG,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC;IAC1C,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;QACpD,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;QAChB,GAAG,IAAI,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,UAAU,GAAG,CAAC,GAAG,GAAG,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9B,GAAG,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;IACvB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAa;IACjD,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IACzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IACpC,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { GradientBevelEffect } from '@flighthq/types';
2
+ export declare function createGradientBevelEffect(options: Readonly<Omit<GradientBevelEffect, 'kind'>>): GradientBevelEffect;
3
+ //# sourceMappingURL=gradientBevelEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gradientBevelEffect.d.ts","sourceRoot":"","sources":["../src/gradientBevelEffect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAG3D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,GAAG,mBAAmB,CAEnH"}
@@ -0,0 +1,5 @@
1
+ // Gradient-bevel composite effect: a bevel whose highlight→shadow band color is looked up from a colors/alphas/ratios gradient ramp indexed by the encoded bevel depth, then sourceMode decides source compositing.
2
+ export function createGradientBevelEffect(options) {
3
+ return { kind: 'GradientBevelEffect', ...options };
4
+ }
5
+ //# sourceMappingURL=gradientBevelEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gradientBevelEffect.js","sourceRoot":"","sources":["../src/gradientBevelEffect.ts"],"names":[],"mappings":"AAEA,oNAAoN;AACpN,MAAM,UAAU,yBAAyB,CAAC,OAAoD;IAC5F,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAE,GAAG,OAAO,EAAE,CAAC;AACrD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { GradientGlowEffect } from '@flighthq/types';
2
+ export declare function createGradientGlowEffect(options: Readonly<Omit<GradientGlowEffect, 'kind'>>): GradientGlowEffect;
3
+ //# sourceMappingURL=gradientGlowEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gradientGlowEffect.d.ts","sourceRoot":"","sources":["../src/gradientGlowEffect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAG1D,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,GAAG,kBAAkB,CAEhH"}
@@ -0,0 +1,5 @@
1
+ // Gradient-glow composite effect: an outer glow whose color is looked up from a colors/alphas/ratios gradient ramp indexed by the blurred silhouette alpha, then sourceMode decides source compositing.
2
+ export function createGradientGlowEffect(options) {
3
+ return { kind: 'GradientGlowEffect', ...options };
4
+ }
5
+ //# sourceMappingURL=gradientGlowEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gradientGlowEffect.js","sourceRoot":"","sources":["../src/gradientGlowEffect.ts"],"names":[],"mappings":"AAEA,wMAAwM;AACxM,MAAM,UAAU,wBAAwB,CAAC,OAAmD;IAC1F,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,GAAG,OAAO,EAAE,CAAC;AACpD,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,44 +1,50 @@
1
1
  export * from './autoExposureEffect';
2
2
  export * from './barrelDistortionEffect';
3
+ export * from './bevelEffect';
4
+ export * from './blendEffect';
5
+ export * from './blendModeMath';
3
6
  export * from './bloomEffect';
7
+ export * from './blurDownsample';
8
+ export * from './blurEffect';
4
9
  export * from './bokehDepthOfFieldEffect';
5
- export * from './brightnessContrastEffect';
10
+ export * from './boxBlurMath';
6
11
  export * from './cameraMotionBlurEffect';
7
- export * from './channelMixerEffect';
8
12
  export * from './chromaticAberrationEffect';
9
- export * from './colorBlindSimulationEffect';
10
- export * from './colorGradeEffect';
11
- export * from './colorScienceMath';
12
13
  export * from './colorTemperatureMath';
14
+ export * from './compositeEffect';
15
+ export * from './compositeOperatorMath';
13
16
  export * from './contactShadowsEffect';
17
+ export * from './convolutionEffect';
14
18
  export * from './crtEffect';
15
19
  export * from './customShaderEffect';
16
20
  export * from './depthMath';
17
21
  export * from './directionalBlurEffect';
18
22
  export * from './displacementEffect';
23
+ export * from './dropShadowEffect';
19
24
  export * from './ditherEffect';
20
25
  export * from './edgeDetectMath';
21
- export * from './exposureEffect';
22
26
  export * from './filmEmulationEffect';
23
27
  export * from './filmGrainEffect';
24
28
  export * from './fxaaEffect';
29
+ export * from './gaussianKernel';
25
30
  export * from './gaussianMath';
26
31
  export * from './glitchEffect';
27
32
  export * from './godRaysEffect';
28
33
  export * from './godRaysMath';
29
- export * from './grayscaleEffect';
34
+ export * from './gradientBevelEffect';
35
+ export * from './gradientGlowEffect';
30
36
  export * from './halftoneEffect';
31
- export * from './hueSaturationEffect';
32
- export * from './invertEffect';
37
+ export * from './innerGlowEffect';
38
+ export * from './innerShadowEffect';
33
39
  export * from './kuwaharaEffect';
34
40
  export * from './kuwaharaMath';
35
41
  export * from './lensDirtEffect';
36
42
  export * from './lensDistortionEffect';
37
43
  export * from './lensFlareEffect';
38
- export * from './liftGammaGainEffect';
39
- export * from './lookupTableGradeEffect';
40
- export * from './lutMath';
44
+ export * from './linearSampledGaussian';
45
+ export * from './medianEffect';
41
46
  export * from './motionBlurEffect';
47
+ export * from './outerGlowEffect';
42
48
  export * from './outlineEffect';
43
49
  export * from './panniniProjectionEffect';
44
50
  export * from './pixelateEffect';
@@ -50,7 +56,6 @@ export * from './renderEffectInterpolation';
50
56
  export * from './renderEffectValidation';
51
57
  export * from './scanlinesEffect';
52
58
  export * from './screenSpaceFogEffect';
53
- export * from './sepiaEffect';
54
59
  export * from './sharpenEffect';
55
60
  export * from './sketchEffect';
56
61
  export * from './smaaEffect';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -1,44 +1,50 @@
1
1
  export * from './autoExposureEffect';
2
2
  export * from './barrelDistortionEffect';
3
+ export * from './bevelEffect';
4
+ export * from './blendEffect';
5
+ export * from './blendModeMath';
3
6
  export * from './bloomEffect';
7
+ export * from './blurDownsample';
8
+ export * from './blurEffect';
4
9
  export * from './bokehDepthOfFieldEffect';
5
- export * from './brightnessContrastEffect';
10
+ export * from './boxBlurMath';
6
11
  export * from './cameraMotionBlurEffect';
7
- export * from './channelMixerEffect';
8
12
  export * from './chromaticAberrationEffect';
9
- export * from './colorBlindSimulationEffect';
10
- export * from './colorGradeEffect';
11
- export * from './colorScienceMath';
12
13
  export * from './colorTemperatureMath';
14
+ export * from './compositeEffect';
15
+ export * from './compositeOperatorMath';
13
16
  export * from './contactShadowsEffect';
17
+ export * from './convolutionEffect';
14
18
  export * from './crtEffect';
15
19
  export * from './customShaderEffect';
16
20
  export * from './depthMath';
17
21
  export * from './directionalBlurEffect';
18
22
  export * from './displacementEffect';
23
+ export * from './dropShadowEffect';
19
24
  export * from './ditherEffect';
20
25
  export * from './edgeDetectMath';
21
- export * from './exposureEffect';
22
26
  export * from './filmEmulationEffect';
23
27
  export * from './filmGrainEffect';
24
28
  export * from './fxaaEffect';
29
+ export * from './gaussianKernel';
25
30
  export * from './gaussianMath';
26
31
  export * from './glitchEffect';
27
32
  export * from './godRaysEffect';
28
33
  export * from './godRaysMath';
29
- export * from './grayscaleEffect';
34
+ export * from './gradientBevelEffect';
35
+ export * from './gradientGlowEffect';
30
36
  export * from './halftoneEffect';
31
- export * from './hueSaturationEffect';
32
- export * from './invertEffect';
37
+ export * from './innerGlowEffect';
38
+ export * from './innerShadowEffect';
33
39
  export * from './kuwaharaEffect';
34
40
  export * from './kuwaharaMath';
35
41
  export * from './lensDirtEffect';
36
42
  export * from './lensDistortionEffect';
37
43
  export * from './lensFlareEffect';
38
- export * from './liftGammaGainEffect';
39
- export * from './lookupTableGradeEffect';
40
- export * from './lutMath';
44
+ export * from './linearSampledGaussian';
45
+ export * from './medianEffect';
41
46
  export * from './motionBlurEffect';
47
+ export * from './outerGlowEffect';
42
48
  export * from './outlineEffect';
43
49
  export * from './panniniProjectionEffect';
44
50
  export * from './pixelateEffect';
@@ -50,7 +56,6 @@ export * from './renderEffectInterpolation';
50
56
  export * from './renderEffectValidation';
51
57
  export * from './scanlinesEffect';
52
58
  export * from './screenSpaceFogEffect';
53
- export * from './sepiaEffect';
54
59
  export * from './sharpenEffect';
55
60
  export * from './sketchEffect';
56
61
  export * from './smaaEffect';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { InnerGlowEffect } from '@flighthq/types';
2
+ export declare function createInnerGlowEffect(options?: Readonly<Omit<InnerGlowEffect, 'kind'>>): InnerGlowEffect;
3
+ //# sourceMappingURL=innerGlowEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"innerGlowEffect.d.ts","sourceRoot":"","sources":["../src/innerGlowEffect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGvD,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAM,GAAG,eAAe,CAE5G"}
@@ -0,0 +1,5 @@
1
+ // Inner-glow composite effect: tint the inverted silhouette, blur inward, clip to the source alpha, then draw or hide the source.
2
+ export function createInnerGlowEffect(options = {}) {
3
+ return { kind: 'InnerGlowEffect', ...options };
4
+ }
5
+ //# sourceMappingURL=innerGlowEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"innerGlowEffect.js","sourceRoot":"","sources":["../src/innerGlowEffect.ts"],"names":[],"mappings":"AAEA,kIAAkI;AAClI,MAAM,UAAU,qBAAqB,CAAC,UAAmD,EAAE;IACzF,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CAAC;AACjD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { InnerShadowEffect } from '@flighthq/types';
2
+ export declare function createInnerShadowEffect(options?: Readonly<Omit<InnerShadowEffect, 'kind'>>): InnerShadowEffect;
3
+ //# sourceMappingURL=innerShadowEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"innerShadowEffect.d.ts","sourceRoot":"","sources":["../src/innerShadowEffect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGzD,wBAAgB,uBAAuB,CAAC,OAAO,GAAE,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAM,GAAG,iBAAiB,CAElH"}
@@ -0,0 +1,5 @@
1
+ // Inner-shadow composite effect: tint the inverted silhouette, blur, offset by angle/distance, clip to the source alpha, then draw or hide the source.
2
+ export function createInnerShadowEffect(options = {}) {
3
+ return { kind: 'InnerShadowEffect', ...options };
4
+ }
5
+ //# sourceMappingURL=innerShadowEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"innerShadowEffect.js","sourceRoot":"","sources":["../src/innerShadowEffect.ts"],"names":[],"mappings":"AAEA,uJAAuJ;AACvJ,MAAM,UAAU,uBAAuB,CAAC,UAAqD,EAAE;IAC7F,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,OAAO,EAAE,CAAC;AACnD,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Produces the bilinear-tap ("linear sampling") form of a Gaussian blur for standard deviation
3
+ * `sigma`, writing the combined weights into `outWeights` and their signed sample offsets (in texels,
4
+ * relative to the center) into `outOffsets`. Both arrays are truncated to
5
+ * `getLinearSampledGaussianTapCount(sigma)`.
6
+ *
7
+ * A separable Gaussian of `N` discrete texels can be sampled with `ceil(N / 2)` bilinear taps: each
8
+ * adjacent texel pair `(i, i+1)` is replaced by one sample whose weight is `w[i] + w[i+1]` taken at
9
+ * the weighted-midpoint offset `(pos[i]·w[i] + pos[i+1]·w[i+1]) / (w[i] + w[i+1])`. Reading that
10
+ * fractional position with hardware bilinear filtering reconstructs the pair's summed contribution
11
+ * in a single fetch, halving the tap count. `N` is always odd, so the final texel is emitted as a
12
+ * standalone unit-pair sample at its own integer offset. The combined weights sum to 1 because the
13
+ * source discrete weights do. Returns `outWeights`.
14
+ */
15
+ export declare function computeLinearSampledGaussian(sigma: number, outWeights: number[], outOffsets: number[]): number[];
16
+ /**
17
+ * Returns the number of bilinear taps the linear-sampling Gaussian uses for standard deviation
18
+ * `sigma`: `ceil(N / 2)` where `N = getGaussianKernelSize(sigma)`. Callers size their weight and
19
+ * offset arrays with this before calling `computeLinearSampledGaussian`.
20
+ */
21
+ export declare function getLinearSampledGaussianTapCount(sigma: number): number;
22
+ //# sourceMappingURL=linearSampledGaussian.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linearSampledGaussian.d.ts","sourceRoot":"","sources":["../src/linearSampledGaussian.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAsBhH;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtE"}
@@ -0,0 +1,56 @@
1
+ // Bilinear-tap ("linear sampling") Gaussian optimization. Substrate-agnostic recipe math: halves the
2
+ // GPU tap count of a separable Gaussian by folding adjacent texel pairs into one hardware-filtered fetch.
3
+ //
4
+ // Copied verbatim from filters-math during the filters→effects migration — effects is the
5
+ // canonical home for the spatial-effect blur math (effect-adjustment-architecture.md, migration
6
+ // step 4). filters-math keeps its copy until the filters* packages retire; the duplicate is
7
+ // deliberate for the duration (mirrors the Phase 1 colorMatrixMath port).
8
+ import { computeGaussianKernelWeights, getGaussianKernelSize } from './gaussianKernel';
9
+ /**
10
+ * Produces the bilinear-tap ("linear sampling") form of a Gaussian blur for standard deviation
11
+ * `sigma`, writing the combined weights into `outWeights` and their signed sample offsets (in texels,
12
+ * relative to the center) into `outOffsets`. Both arrays are truncated to
13
+ * `getLinearSampledGaussianTapCount(sigma)`.
14
+ *
15
+ * A separable Gaussian of `N` discrete texels can be sampled with `ceil(N / 2)` bilinear taps: each
16
+ * adjacent texel pair `(i, i+1)` is replaced by one sample whose weight is `w[i] + w[i+1]` taken at
17
+ * the weighted-midpoint offset `(pos[i]·w[i] + pos[i+1]·w[i+1]) / (w[i] + w[i+1])`. Reading that
18
+ * fractional position with hardware bilinear filtering reconstructs the pair's summed contribution
19
+ * in a single fetch, halving the tap count. `N` is always odd, so the final texel is emitted as a
20
+ * standalone unit-pair sample at its own integer offset. The combined weights sum to 1 because the
21
+ * source discrete weights do. Returns `outWeights`.
22
+ */
23
+ export function computeLinearSampledGaussian(sigma, outWeights, outOffsets) {
24
+ const size = getGaussianKernelSize(sigma);
25
+ const radius = (size - 1) / 2;
26
+ computeGaussianKernelWeights(sigma, scratchWeights);
27
+ const tapCount = getLinearSampledGaussianTapCount(sigma);
28
+ outWeights.length = tapCount;
29
+ outOffsets.length = tapCount;
30
+ for (let tap = 0; tap < tapCount; tap++) {
31
+ const i = tap * 2;
32
+ const posA = i - radius;
33
+ if (i + 1 < size) {
34
+ const weightA = scratchWeights[i];
35
+ const weightB = scratchWeights[i + 1];
36
+ const combined = weightA + weightB;
37
+ outWeights[tap] = combined;
38
+ outOffsets[tap] = combined === 0 ? posA + 0.5 : (posA * weightA + (posA + 1) * weightB) / combined;
39
+ }
40
+ else {
41
+ outWeights[tap] = scratchWeights[i];
42
+ outOffsets[tap] = posA;
43
+ }
44
+ }
45
+ return outWeights;
46
+ }
47
+ /**
48
+ * Returns the number of bilinear taps the linear-sampling Gaussian uses for standard deviation
49
+ * `sigma`: `ceil(N / 2)` where `N = getGaussianKernelSize(sigma)`. Callers size their weight and
50
+ * offset arrays with this before calling `computeLinearSampledGaussian`.
51
+ */
52
+ export function getLinearSampledGaussianTapCount(sigma) {
53
+ return Math.ceil(getGaussianKernelSize(sigma) / 2);
54
+ }
55
+ const scratchWeights = [];
56
+ //# sourceMappingURL=linearSampledGaussian.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linearSampledGaussian.js","sourceRoot":"","sources":["../src/linearSampledGaussian.ts"],"names":[],"mappings":"AAAA,qGAAqG;AACrG,0GAA0G;AAC1G,EAAE;AACF,0FAA0F;AAC1F,gGAAgG;AAChG,4FAA4F;AAC5F,0EAA0E;AAE1E,OAAO,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEvF;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,4BAA4B,CAAC,KAAa,EAAE,UAAoB,EAAE,UAAoB;IACpG,MAAM,IAAI,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9B,4BAA4B,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,gCAAgC,CAAC,KAAK,CAAC,CAAC;IACzD,UAAU,CAAC,MAAM,GAAG,QAAQ,CAAC;IAC7B,UAAU,CAAC,MAAM,GAAG,QAAQ,CAAC;IAC7B,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QAClB,MAAM,IAAI,GAAG,CAAC,GAAG,MAAM,CAAC;QACxB,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;YACnC,UAAU,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;YAC3B,UAAU,CAAC,GAAG,CAAC,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,QAAQ,CAAC;QACrG,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACpC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gCAAgC,CAAC,KAAa;IAC5D,OAAO,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,cAAc,GAAa,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { MedianEffect } from '@flighthq/types';
2
+ export declare function createMedianEffect(options?: Readonly<Omit<MedianEffect, 'kind'>>): MedianEffect;
3
+ //# sourceMappingURL=medianEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"medianEffect.d.ts","sourceRoot":"","sources":["../src/medianEffect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAM,GAAG,YAAY,CAEnG"}
@@ -0,0 +1,4 @@
1
+ export function createMedianEffect(options = {}) {
2
+ return { kind: 'MedianEffect', ...options };
3
+ }
4
+ //# sourceMappingURL=medianEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"medianEffect.js","sourceRoot":"","sources":["../src/medianEffect.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,kBAAkB,CAAC,UAAgD,EAAE;IACnF,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { OuterGlowEffect } from '@flighthq/types';
2
+ export declare function createOuterGlowEffect(options?: Readonly<Omit<OuterGlowEffect, 'kind'>>): OuterGlowEffect;
3
+ //# sourceMappingURL=outerGlowEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outerGlowEffect.d.ts","sourceRoot":"","sources":["../src/outerGlowEffect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGvD,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAM,GAAG,eAAe,CAE5G"}
@@ -0,0 +1,5 @@
1
+ // Outer-glow composite effect: tint the scene silhouette, blur it centered (no offset), then apply sourceMode compositing.
2
+ export function createOuterGlowEffect(options = {}) {
3
+ return { kind: 'OuterGlowEffect', ...options };
4
+ }
5
+ //# sourceMappingURL=outerGlowEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outerGlowEffect.js","sourceRoot":"","sources":["../src/outerGlowEffect.ts"],"names":[],"mappings":"AAEA,2HAA2H;AAC3H,MAAM,UAAU,qBAAqB,CAAC,UAAmD,EAAE;IACzF,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CAAC;AACjD,CAAC"}
@@ -42,45 +42,77 @@ export function normalizeRenderEffect(effect, out) {
42
42
  const DEFAULTS = {
43
43
  AutoExposureEffect: { adaptationSpeed: 1, exposureCompensation: 0, maxExposure: 2, minExposure: -2 },
44
44
  BarrelDistortionEffect: { amount: 0.5, scale: 0.9 },
45
+ BevelEffect: {
46
+ angle: 45,
47
+ bevelType: 'inner',
48
+ blurX: 4,
49
+ blurY: 4,
50
+ distance: 4,
51
+ highlightAlpha: 1,
52
+ highlightColor: 0xffffff,
53
+ quality: 1,
54
+ shadowAlpha: 1,
55
+ shadowColor: 0x000000,
56
+ sourceMode: 'draw',
57
+ strength: 1,
58
+ },
59
+ BlendEffect: { opacity: 1 },
45
60
  BloomEffect: { brightness: 1, mipCount: 0, passes: 1, radius: 8, threshold: 0.8, thresholdKnee: 0.5 },
61
+ BlurEffect: { blurX: 4, blurY: 4 },
46
62
  BokehDepthOfFieldEffect: { apertureBlades: 6, maxBlurRadius: 16, samples: 16 },
47
- BrightnessContrastEffect: { brightness: 0, contrast: 0 },
48
63
  CameraMotionBlurEffect: { samples: 8 },
49
64
  ChromaticAberrationEffect: { fringeStrength: 0.01, radial: true, samples: 3 },
50
- ColorGradeEffect: {
51
- brightness: 0,
52
- contrast: 0,
53
- exposure: 0,
54
- highlights: 0x808080ff,
55
- midtones: 0x808080ff,
56
- saturation: 1,
57
- shadows: 0x808080ff,
58
- temperature: 0,
59
- tint: 0,
60
- },
61
- ColorBlindSimulationEffect: { type: 'deuteranopia' },
62
65
  ContactShadowsEffect: { distance: 0.5, opacity: 0.6, samples: 16, smoothness: 0.5 },
66
+ ConvolutionEffect: { bias: 0, clamp: true, preserveAlpha: true },
63
67
  CrtEffect: { curvature: 0.1, scanlineIntensity: 0.5, vignette: 0.4, aberration: 0 },
64
68
  DirectionalBlurEffect: { angle: 0, samples: 8 },
65
69
  DisplacementEffect: { frequency: 12, intensity: 8 },
66
70
  DitherEffect: { levels: 16 },
67
- ExposureEffect: { exposure: 0 },
71
+ DropShadowEffect: {
72
+ alpha: 1,
73
+ angle: 45,
74
+ blurX: 4,
75
+ blurY: 4,
76
+ distance: 4,
77
+ quality: 1,
78
+ sourceMode: 'draw',
79
+ strength: 1,
80
+ },
68
81
  FilmEmulationEffect: { gateWeave: 0, grainIntensity: 0.1, halationRadius: 4, halationStrength: 0.3 },
69
82
  FilmGrainEffect: { intensity: 0.2, size: 1, seed: 0 },
70
83
  FxaaEffect: { edgeThreshold: 0.0312, subpixel: 0.75 },
71
84
  GlitchEffect: { blockSize: 24, colorShift: 8, intensity: 0.5, seed: 0 },
72
85
  GodRaysEffect: { centerX: 0.5, centerY: 0.5, decay: 0.96, density: 0.96, exposure: 0.1, samples: 100, weight: 0.4 },
73
- GrayscaleEffect: { intensity: 1 },
86
+ GradientBevelEffect: {
87
+ angle: 45,
88
+ bevelType: 'inner',
89
+ blurX: 4,
90
+ blurY: 4,
91
+ distance: 4,
92
+ quality: 1,
93
+ sourceMode: 'draw',
94
+ strength: 1,
95
+ },
96
+ GradientGlowEffect: { blurX: 6, blurY: 6, quality: 1, sourceMode: 'draw', strength: 1 },
74
97
  HalftoneEffect: { angle: 0.785, scale: 8 }, // 0.785 ≈ π/4 = 45°
75
- HueSaturationEffect: { hue: 0, lightness: 0, saturation: 1 },
76
- InvertEffect: { intensity: 1 },
98
+ InnerGlowEffect: { alpha: 1, blurX: 6, blurY: 6, color: 0xff0000, quality: 1, sourceMode: 'draw', strength: 1 },
99
+ InnerShadowEffect: {
100
+ alpha: 1,
101
+ angle: 45,
102
+ blurX: 4,
103
+ blurY: 4,
104
+ distance: 4,
105
+ quality: 1,
106
+ sourceMode: 'draw',
107
+ strength: 1,
108
+ },
77
109
  KuwaharaEffect: { radius: 3 },
78
110
  LensDirtEffect: { intensity: 1, threshold: 0.55 },
79
111
  LensDistortionEffect: { amount: 0.5, scale: 0.9 },
80
112
  LensFlareEffect: { ghosts: 4, halo: 0.5, intensity: 1, threshold: 0.9 },
81
- LiftGammaGainEffect: { gain: 0x808080ff, gamma: 0x808080ff, lift: 0x808080ff },
82
- LookupTableGradeEffect: { size: 16, strength: 1 },
113
+ MedianEffect: { radius: 1 },
83
114
  MotionBlurEffect: { intensity: 1, samples: 8, shutterAngle: 180, target: 'both' },
115
+ OuterGlowEffect: { alpha: 1, blurX: 6, blurY: 6, color: 0xff0000, quality: 1, sourceMode: 'draw', strength: 1 },
84
116
  OutlineEffect: { color: 0x000000ff, thickness: 1, threshold: 0.1 },
85
117
  PanniniProjectionEffect: { compression: 0.5, crop: 0 },
86
118
  PixelateEffect: { size: 8 },
@@ -88,7 +120,6 @@ const DEFAULTS = {
88
120
  RadialBlurEffect: { centerX: 0.5, centerY: 0.5, samples: 8, strength: 0.1 },
89
121
  ScanlinesEffect: { count: 480, intensity: 0.25 },
90
122
  ScreenSpaceFogEffect: { density: 0.5, far: 1000, near: 10 },
91
- SepiaEffect: { intensity: 1 },
92
123
  SharpenEffect: { amount: 0.5 },
93
124
  SketchEffect: { strength: 1 },
94
125
  SmaaEffect: { threshold: 0.1 },
@@ -1 +1 @@
1
- {"version":3,"file":"renderEffectDefaults.js","sourceRoot":"","sources":["../src/renderEffectDefaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderEffectDefaults.js","sourceRoot":"","sources":["../src/renderEffectDefaults.ts"],"names":[],"mappings":"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"}
@@ -33,37 +33,38 @@ const RENDER_EFFECT_INPUTS = {
33
33
  export const RENDER_EFFECT_KINDS = [
34
34
  'AutoExposureEffect',
35
35
  'BarrelDistortionEffect',
36
+ 'BevelEffect',
37
+ 'BlendEffect',
36
38
  'BloomEffect',
39
+ 'BlurEffect',
37
40
  'BokehDepthOfFieldEffect',
38
- 'BrightnessContrastEffect',
39
41
  'CameraMotionBlurEffect',
40
- 'ChannelMixerEffect',
41
42
  'ChromaticAberrationEffect',
42
- 'ColorBlindSimulationEffect',
43
- 'ColorGradeEffect',
44
43
  'ContactShadowsEffect',
44
+ 'ConvolutionEffect',
45
45
  'CrtEffect',
46
46
  'CustomShaderEffect',
47
47
  'DirectionalBlurEffect',
48
48
  'DisplacementEffect',
49
49
  'DitherEffect',
50
- 'ExposureEffect',
50
+ 'DropShadowEffect',
51
51
  'FilmEmulationEffect',
52
52
  'FilmGrainEffect',
53
53
  'FxaaEffect',
54
54
  'GlitchEffect',
55
55
  'GodRaysEffect',
56
- 'GrayscaleEffect',
56
+ 'GradientBevelEffect',
57
+ 'GradientGlowEffect',
57
58
  'HalftoneEffect',
58
- 'HueSaturationEffect',
59
- 'InvertEffect',
59
+ 'InnerGlowEffect',
60
+ 'InnerShadowEffect',
60
61
  'KuwaharaEffect',
61
62
  'LensDirtEffect',
62
63
  'LensDistortionEffect',
63
64
  'LensFlareEffect',
64
- 'LiftGammaGainEffect',
65
- 'LookupTableGradeEffect',
65
+ 'MedianEffect',
66
66
  'MotionBlurEffect',
67
+ 'OuterGlowEffect',
67
68
  'OutlineEffect',
68
69
  'PanniniProjectionEffect',
69
70
  'PixelateEffect',
@@ -71,7 +72,6 @@ export const RENDER_EFFECT_KINDS = [
71
72
  'RadialBlurEffect',
72
73
  'ScanlinesEffect',
73
74
  'ScreenSpaceFogEffect',
74
- 'SepiaEffect',
75
75
  'SharpenEffect',
76
76
  'SketchEffect',
77
77
  'SmaaEffect',