@deck.gl/extensions 9.0.0-beta.4 → 9.0.0-beta.6

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 (47) hide show
  1. package/dist/brushing/shader-module.d.ts.map +1 -1
  2. package/dist/brushing/shader-module.js +52 -57
  3. package/dist/clip/clip-extension.d.ts.map +1 -1
  4. package/dist/clip/clip-extension.js +6 -6
  5. package/dist/collision-filter/shader-module.d.ts.map +1 -1
  6. package/dist/collision-filter/shader-module.js +46 -56
  7. package/dist/data-filter/aggregator.d.ts.map +1 -1
  8. package/dist/data-filter/aggregator.js +11 -14
  9. package/dist/data-filter/data-filter-extension.d.ts +2 -1
  10. package/dist/data-filter/data-filter-extension.d.ts.map +1 -1
  11. package/dist/data-filter/data-filter-extension.js +13 -7
  12. package/dist/data-filter/shader-module.d.ts.map +1 -1
  13. package/dist/data-filter/shader-module.js +70 -78
  14. package/dist/dist.dev.js +297 -302
  15. package/dist/fill-style/fill-style-extension.js +1 -1
  16. package/dist/fill-style/{shaders.glsl.d.ts → shader-module.d.ts} +1 -1
  17. package/dist/fill-style/shader-module.d.ts.map +1 -0
  18. package/dist/fill-style/{shaders.glsl.js → shader-module.js} +27 -33
  19. package/dist/fp64/project64.glsl.js +41 -60
  20. package/dist/index.cjs +374 -432
  21. package/dist/index.cjs.map +4 -4
  22. package/dist/mask/mask-pass.js +2 -2
  23. package/dist/mask/shader-module.d.ts.map +1 -1
  24. package/dist/mask/shader-module.js +33 -37
  25. package/dist/path-style/shaders.glsl.js +42 -47
  26. package/dist/terrain/shader-module.d.ts.map +1 -1
  27. package/dist/terrain/shader-module.js +30 -32
  28. package/dist/terrain/terrain-pass.js +2 -2
  29. package/dist/terrain/utils.js +2 -2
  30. package/dist/utils/syntax-tags.d.ts +6 -0
  31. package/dist/utils/syntax-tags.d.ts.map +1 -0
  32. package/dist/utils/syntax-tags.js +5 -0
  33. package/dist.min.js +364 -431
  34. package/package.json +8 -8
  35. package/src/brushing/shader-module.ts +4 -3
  36. package/src/clip/clip-extension.ts +10 -9
  37. package/src/collision-filter/shader-module.ts +6 -4
  38. package/src/data-filter/aggregator.ts +8 -13
  39. package/src/data-filter/data-filter-extension.ts +18 -8
  40. package/src/data-filter/shader-module.ts +7 -6
  41. package/src/fill-style/fill-style-extension.ts +1 -1
  42. package/src/fill-style/{shaders.glsl.ts → shader-module.ts} +6 -5
  43. package/src/mask/shader-module.ts +7 -6
  44. package/src/terrain/shader-module.ts +11 -10
  45. package/src/terrain/utils.ts +1 -1
  46. package/src/utils/syntax-tags.ts +5 -0
  47. package/dist/fill-style/shaders.glsl.d.ts.map +0 -1
@@ -1,3 +1,4 @@
1
+ import { glsl } from "../utils/syntax-tags.js";
1
2
  /*
2
3
  * data filter shader module
3
4
  */
@@ -10,78 +11,69 @@ uniform bool filter_useSoftMargin;
10
11
  uniform bool filter_enabled;
11
12
  uniform bool filter_transformSize;
12
13
  uniform ivec4 filter_categoryBitMask;
13
-
14
14
  #ifdef NON_INSTANCED_MODEL
15
- #define DATAFILTER_ATTRIB filterValues
16
- #define DATAFILTER_ATTRIB_64LOW filterValues64Low
17
- #define DATACATEGORY_ATTRIB filterCategoryValues
15
+ #define DATAFILTER_ATTRIB filterValues
16
+ #define DATAFILTER_ATTRIB_64LOW filterValues64Low
17
+ #define DATACATEGORY_ATTRIB filterCategoryValues
18
18
  #else
19
- #define DATAFILTER_ATTRIB instanceFilterValues
20
- #define DATAFILTER_ATTRIB_64LOW instanceFilterValues64Low
21
- #define DATACATEGORY_ATTRIB instanceFilterCategoryValues
19
+ #define DATAFILTER_ATTRIB instanceFilterValues
20
+ #define DATAFILTER_ATTRIB_64LOW instanceFilterValues64Low
21
+ #define DATACATEGORY_ATTRIB instanceFilterCategoryValues
22
22
  #endif
23
-
24
23
  in DATAFILTER_TYPE DATAFILTER_ATTRIB;
25
24
  #ifdef DATAFILTER_DOUBLE
26
- in DATAFILTER_TYPE DATAFILTER_ATTRIB_64LOW;
27
-
28
- uniform DATAFILTER_TYPE filter_min64High;
29
- uniform DATAFILTER_TYPE filter_max64High;
25
+ in DATAFILTER_TYPE DATAFILTER_ATTRIB_64LOW;
26
+ uniform DATAFILTER_TYPE filter_min64High;
27
+ uniform DATAFILTER_TYPE filter_max64High;
30
28
  #endif
31
29
  in DATACATEGORY_TYPE DATACATEGORY_ATTRIB;
32
-
33
30
  out float dataFilter_value;
34
-
35
31
  float dataFilter_reduceValue(float value) {
36
- return value;
32
+ return value;
37
33
  }
38
34
  float dataFilter_reduceValue(vec2 value) {
39
- return min(value.x, value.y);
35
+ return min(value.x, value.y);
40
36
  }
41
37
  float dataFilter_reduceValue(vec3 value) {
42
- return min(min(value.x, value.y), value.z);
38
+ return min(min(value.x, value.y), value.z);
43
39
  }
44
40
  float dataFilter_reduceValue(vec4 value) {
45
- return min(min(value.x, value.y), min(value.z, value.w));
41
+ return min(min(value.x, value.y), min(value.z, value.w));
46
42
  }
47
43
  void dataFilter_setValue(DATAFILTER_TYPE valueFromMin, DATAFILTER_TYPE valueFromMax, DATACATEGORY_TYPE category) {
48
- if (filter_enabled) {
49
- if (filter_useSoftMargin) {
50
- dataFilter_value = dataFilter_reduceValue(
51
- smoothstep(filter_min, filter_softMin, valueFromMin) *
52
- (1.0 - smoothstep(filter_softMax, filter_max, valueFromMax))
53
- );
54
- } else {
55
- dataFilter_value = dataFilter_reduceValue(
56
- step(filter_min, valueFromMin) * step(valueFromMax, filter_max)
57
- );
58
- }
59
-
60
- #if DATACATEGORY_CHANNELS == 1 // One 128-bit mask
61
- int dataFilter_masks = filter_categoryBitMask[int(category / 32.0)];
62
- #elif DATACATEGORY_CHANNELS == 2 // Two 64-bit masks
63
- ivec2 dataFilter_masks = ivec2(
64
- filter_categoryBitMask[int(category.x / 32.0)],
65
- filter_categoryBitMask[int(category.y / 32.0) + 2]
66
- );
67
- #elif DATACATEGORY_CHANNELS == 3 // Three 32-bit masks
68
- ivec3 dataFilter_masks = filter_categoryBitMask.xyz;
69
- #else // Four 32-bit masks
70
- ivec4 dataFilter_masks = filter_categoryBitMask;
71
- #endif
72
-
73
- // Shift mask and extract relevant bits
74
- DATACATEGORY_TYPE dataFilter_bits = DATACATEGORY_TYPE(dataFilter_masks) / pow(DATACATEGORY_TYPE(2.0), mod(category, 32.0));
75
- dataFilter_bits = mod(floor(dataFilter_bits), 2.0);
76
-
77
- #if DATACATEGORY_CHANNELS == 1
78
- if(dataFilter_bits == 0.0) dataFilter_value = 0.0;
79
- #else
80
- if(any(equal(dataFilter_bits, DATACATEGORY_TYPE(0.0)))) dataFilter_value = 0.0;
81
- #endif
82
- } else {
83
- dataFilter_value = 1.0;
84
- }
44
+ if (filter_enabled) {
45
+ if (filter_useSoftMargin) {
46
+ dataFilter_value = dataFilter_reduceValue(
47
+ smoothstep(filter_min, filter_softMin, valueFromMin) *
48
+ (1.0 - smoothstep(filter_softMax, filter_max, valueFromMax))
49
+ );
50
+ } else {
51
+ dataFilter_value = dataFilter_reduceValue(
52
+ step(filter_min, valueFromMin) * step(valueFromMax, filter_max)
53
+ );
54
+ }
55
+ #if DATACATEGORY_CHANNELS == 1
56
+ int dataFilter_masks = filter_categoryBitMask[int(category / 32.0)];
57
+ #elif DATACATEGORY_CHANNELS == 2
58
+ ivec2 dataFilter_masks = ivec2(
59
+ filter_categoryBitMask[int(category.x / 32.0)],
60
+ filter_categoryBitMask[int(category.y / 32.0) + 2]
61
+ );
62
+ #elif DATACATEGORY_CHANNELS == 3
63
+ ivec3 dataFilter_masks = filter_categoryBitMask.xyz;
64
+ #else
65
+ ivec4 dataFilter_masks = filter_categoryBitMask;
66
+ #endif
67
+ DATACATEGORY_TYPE dataFilter_bits = DATACATEGORY_TYPE(dataFilter_masks) / pow(DATACATEGORY_TYPE(2.0), mod(category, 32.0));
68
+ dataFilter_bits = mod(floor(dataFilter_bits), 2.0);
69
+ #if DATACATEGORY_CHANNELS == 1
70
+ if(dataFilter_bits == 0.0) dataFilter_value = 0.0;
71
+ #else
72
+ if(any(equal(dataFilter_bits, DATACATEGORY_TYPE(0.0)))) dataFilter_value = 0.0;
73
+ #endif
74
+ } else {
75
+ dataFilter_value = 1.0;
76
+ }
85
77
  }
86
78
  `;
87
79
  const fs = `
@@ -144,32 +136,32 @@ function getUniforms64(opts) {
144
136
  }
145
137
  const inject = {
146
138
  'vs:#main-start': `
147
- #ifdef DATAFILTER_DOUBLE
148
- dataFilter_setValue(
149
- DATAFILTER_ATTRIB - filter_min64High + DATAFILTER_ATTRIB_64LOW,
150
- DATAFILTER_ATTRIB - filter_max64High + DATAFILTER_ATTRIB_64LOW,
151
- DATACATEGORY_ATTRIB
152
- );
153
- #else
154
- dataFilter_setValue(DATAFILTER_ATTRIB, DATAFILTER_ATTRIB, DATACATEGORY_ATTRIB);
155
- #endif
156
- `,
139
+ #ifdef DATAFILTER_DOUBLE
140
+ dataFilter_setValue(
141
+ DATAFILTER_ATTRIB - filter_min64High + DATAFILTER_ATTRIB_64LOW,
142
+ DATAFILTER_ATTRIB - filter_max64High + DATAFILTER_ATTRIB_64LOW,
143
+ DATACATEGORY_ATTRIB
144
+ );
145
+ #else
146
+ dataFilter_setValue(DATAFILTER_ATTRIB, DATAFILTER_ATTRIB, DATACATEGORY_ATTRIB);
147
+ #endif
148
+ `,
157
149
  'vs:#main-end': `
158
- if (dataFilter_value == 0.0) {
159
- gl_Position = vec4(0.);
160
- }
161
- `,
150
+ if (dataFilter_value == 0.0) {
151
+ gl_Position = vec4(0.);
152
+ }
153
+ `,
162
154
  'vs:DECKGL_FILTER_SIZE': `
163
- if (filter_transformSize) {
164
- size = size * dataFilter_value;
165
- }
166
- `,
155
+ if (filter_transformSize) {
156
+ size = size * dataFilter_value;
157
+ }
158
+ `,
167
159
  'fs:DECKGL_FILTER_COLOR': `
168
- if (dataFilter_value == 0.0) discard;
169
- if (filter_transformColor) {
170
- color.a *= dataFilter_value;
171
- }
172
- `
160
+ if (dataFilter_value == 0.0) discard;
161
+ if (filter_transformColor) {
162
+ color.a *= dataFilter_value;
163
+ }
164
+ `
173
165
  };
174
166
  export const shaderModule = {
175
167
  name: 'data-filter',