@deck.gl/extensions 9.1.0-beta.1 → 9.1.0-beta.3
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/brushing/brushing-extension.js +1 -0
- package/dist/brushing/brushing-extension.js.map +1 -0
- package/dist/brushing/shader-module.js +1 -0
- package/dist/brushing/shader-module.js.map +1 -0
- package/dist/clip/clip-extension.js +1 -0
- package/dist/clip/clip-extension.js.map +1 -0
- package/dist/collision-filter/collision-filter-effect.js +1 -0
- package/dist/collision-filter/collision-filter-effect.js.map +1 -0
- package/dist/collision-filter/collision-filter-extension.js +1 -0
- package/dist/collision-filter/collision-filter-extension.js.map +1 -0
- package/dist/collision-filter/collision-filter-pass.d.ts +2 -2
- package/dist/collision-filter/collision-filter-pass.d.ts.map +1 -1
- package/dist/collision-filter/collision-filter-pass.js +7 -1
- package/dist/collision-filter/collision-filter-pass.js.map +1 -0
- package/dist/collision-filter/shader-module.js +1 -0
- package/dist/collision-filter/shader-module.js.map +1 -0
- package/dist/data-filter/aggregator.js +1 -0
- package/dist/data-filter/aggregator.js.map +1 -0
- package/dist/data-filter/data-filter-extension.d.ts.map +1 -1
- package/dist/data-filter/data-filter-extension.js +9 -1
- package/dist/data-filter/data-filter-extension.js.map +1 -0
- package/dist/data-filter/shader-module.d.ts +1 -1
- package/dist/data-filter/shader-module.d.ts.map +1 -1
- package/dist/data-filter/shader-module.js +12 -11
- package/dist/data-filter/shader-module.js.map +1 -0
- package/dist/dist.dev.js +28 -16
- package/dist/fill-style/fill-style-extension.js +1 -0
- package/dist/fill-style/fill-style-extension.js.map +1 -0
- package/dist/fill-style/shader-module.js +1 -0
- package/dist/fill-style/shader-module.js.map +1 -0
- package/dist/fp64/fp64-extension.js +1 -0
- package/dist/fp64/fp64-extension.js.map +1 -0
- package/dist/fp64/project64.glsl.js +1 -0
- package/dist/fp64/project64.glsl.js.map +1 -0
- package/dist/fp64/project64.js +1 -0
- package/dist/fp64/project64.js.map +1 -0
- package/dist/index.cjs +28 -16
- package/dist/index.cjs.map +3 -3
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/mask/mask-effect.js +1 -0
- package/dist/mask/mask-effect.js.map +1 -0
- package/dist/mask/mask-extension.js +1 -0
- package/dist/mask/mask-extension.js.map +1 -0
- package/dist/mask/mask-pass.d.ts +2 -43
- package/dist/mask/mask-pass.d.ts.map +1 -1
- package/dist/mask/mask-pass.js +2 -1
- package/dist/mask/mask-pass.js.map +1 -0
- package/dist/mask/shader-module.js +1 -0
- package/dist/mask/shader-module.js.map +1 -0
- package/dist/path-style/path-style-extension.js +1 -0
- package/dist/path-style/path-style-extension.js.map +1 -0
- package/dist/path-style/shaders.glsl.js +1 -0
- package/dist/path-style/shaders.glsl.js.map +1 -0
- package/dist/terrain/height-map-builder.js +1 -0
- package/dist/terrain/height-map-builder.js.map +1 -0
- package/dist/terrain/shader-module.d.ts.map +1 -1
- package/dist/terrain/shader-module.js +1 -0
- package/dist/terrain/shader-module.js.map +1 -0
- package/dist/terrain/terrain-cover.js +1 -0
- package/dist/terrain/terrain-cover.js.map +1 -0
- package/dist/terrain/terrain-effect.js +1 -0
- package/dist/terrain/terrain-effect.js.map +1 -0
- package/dist/terrain/terrain-extension.js +1 -0
- package/dist/terrain/terrain-extension.js.map +1 -0
- package/dist/terrain/terrain-pass.d.ts +2 -42
- package/dist/terrain/terrain-pass.d.ts.map +1 -1
- package/dist/terrain/terrain-pass.js +2 -1
- package/dist/terrain/terrain-pass.js.map +1 -0
- package/dist/terrain/terrain-picking-pass.d.ts +2 -1
- package/dist/terrain/terrain-picking-pass.d.ts.map +1 -1
- package/dist/terrain/terrain-picking-pass.js +2 -1
- package/dist/terrain/terrain-picking-pass.js.map +1 -0
- package/dist/terrain/utils.js +1 -0
- package/dist/terrain/utils.js.map +1 -0
- package/dist/utils/debug.js +1 -0
- package/dist/utils/debug.js.map +1 -0
- package/dist/utils/projection-utils.js +1 -0
- package/dist/utils/projection-utils.js.map +1 -0
- package/dist.min.js +60 -60
- package/package.json +7 -7
- package/src/collision-filter/collision-filter-pass.ts +8 -3
- package/src/data-filter/data-filter-extension.ts +8 -1
- package/src/data-filter/shader-module.ts +12 -12
- package/src/mask/mask-pass.ts +13 -3
- package/src/terrain/shader-module.ts +1 -1
- package/src/terrain/terrain-pass.ts +7 -3
- package/src/terrain/terrain-picking-pass.ts +3 -2
|
@@ -14,7 +14,7 @@ export type Defines = {
|
|
|
14
14
|
/**
|
|
15
15
|
* Primitive type of parameter used for category filtering. If undefined, category filtering disabled.
|
|
16
16
|
*/
|
|
17
|
-
DATACATEGORY_TYPE?: '
|
|
17
|
+
DATACATEGORY_TYPE?: 'uint' | 'uvec2' | 'uvec3' | 'uvec4';
|
|
18
18
|
/**
|
|
19
19
|
* Number of category filtering channels. Must match dimension of `DATACATEGORY_TYPE`
|
|
20
20
|
*/
|
|
@@ -48,7 +48,7 @@ uniform dataFilterUniforms {
|
|
|
48
48
|
#endif
|
|
49
49
|
#endif
|
|
50
50
|
#ifdef DATACATEGORY_TYPE
|
|
51
|
-
highp
|
|
51
|
+
highp uvec4 categoryBitMask;
|
|
52
52
|
#endif
|
|
53
53
|
} dataFilter;
|
|
54
54
|
`;
|
|
@@ -107,26 +107,26 @@ float dataFilter_reduceValue(vec4 value) {
|
|
|
107
107
|
#ifdef DATACATEGORY_TYPE
|
|
108
108
|
void dataFilter_setCategoryValue(DATACATEGORY_TYPE category) {
|
|
109
109
|
#if DATACATEGORY_CHANNELS == 1 // One 128-bit mask
|
|
110
|
-
|
|
110
|
+
uint dataFilter_masks = dataFilter.categoryBitMask[category / 32u];
|
|
111
111
|
#elif DATACATEGORY_CHANNELS == 2 // Two 64-bit masks
|
|
112
|
-
|
|
113
|
-
dataFilter.categoryBitMask[
|
|
114
|
-
dataFilter.categoryBitMask[
|
|
112
|
+
uvec2 dataFilter_masks = uvec2(
|
|
113
|
+
dataFilter.categoryBitMask[category.x / 32u],
|
|
114
|
+
dataFilter.categoryBitMask[category.y / 32u + 2u]
|
|
115
115
|
);
|
|
116
116
|
#elif DATACATEGORY_CHANNELS == 3 // Three 32-bit masks
|
|
117
|
-
|
|
117
|
+
uvec3 dataFilter_masks = dataFilter.categoryBitMask.xyz;
|
|
118
118
|
#else // Four 32-bit masks
|
|
119
|
-
|
|
119
|
+
uvec4 dataFilter_masks = dataFilter.categoryBitMask;
|
|
120
120
|
#endif
|
|
121
121
|
|
|
122
122
|
// Shift mask and extract relevant bits
|
|
123
|
-
DATACATEGORY_TYPE dataFilter_bits = DATACATEGORY_TYPE(dataFilter_masks)
|
|
124
|
-
dataFilter_bits
|
|
123
|
+
DATACATEGORY_TYPE dataFilter_bits = DATACATEGORY_TYPE(dataFilter_masks) >> (category & 31u);
|
|
124
|
+
dataFilter_bits &= 1u;
|
|
125
125
|
|
|
126
126
|
#if DATACATEGORY_CHANNELS == 1
|
|
127
|
-
if(dataFilter_bits ==
|
|
127
|
+
if(dataFilter_bits == 0u) dataFilter_value = 0.0;
|
|
128
128
|
#else
|
|
129
|
-
if(any(equal(dataFilter_bits, DATACATEGORY_TYPE(
|
|
129
|
+
if(any(equal(dataFilter_bits, DATACATEGORY_TYPE(0u)))) dataFilter_value = 0.0;
|
|
130
130
|
#endif
|
|
131
131
|
}
|
|
132
132
|
#endif
|
package/src/mask/mask-pass.ts
CHANGED
|
@@ -2,7 +2,13 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
4
|
|
|
5
|
-
import type {
|
|
5
|
+
import type {
|
|
6
|
+
Device,
|
|
7
|
+
Framebuffer,
|
|
8
|
+
Parameters,
|
|
9
|
+
RenderPipelineParameters,
|
|
10
|
+
Texture
|
|
11
|
+
} from '@luma.gl/core';
|
|
6
12
|
import {Layer, _LayersPass as LayersPass, LayersPassRenderOptions, Viewport} from '@deck.gl/core';
|
|
7
13
|
|
|
8
14
|
type MaskPassRenderOptions = LayersPassRenderOptions & {
|
|
@@ -54,11 +60,15 @@ export default class MaskPass extends LayersPass {
|
|
|
54
60
|
super.render({...options, clearColor, colorMask, target: this.fbo, pass: 'mask'});
|
|
55
61
|
}
|
|
56
62
|
|
|
57
|
-
protected getLayerParameters(
|
|
63
|
+
protected getLayerParameters(
|
|
64
|
+
layer: Layer<{}>,
|
|
65
|
+
layerIndex: number,
|
|
66
|
+
viewport: Viewport
|
|
67
|
+
): Parameters {
|
|
58
68
|
return {
|
|
59
69
|
...layer.props.parameters,
|
|
60
70
|
blend: true,
|
|
61
|
-
|
|
71
|
+
depthCompare: 'always',
|
|
62
72
|
...MASK_BLENDING
|
|
63
73
|
};
|
|
64
74
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/* eslint-disable camelcase */
|
|
6
6
|
|
|
7
7
|
import type {ShaderModule} from '@luma.gl/shadertools';
|
|
8
|
-
import {project, ProjectProps, ProjectUniforms
|
|
8
|
+
import {project, ProjectProps, ProjectUniforms} from '@deck.gl/core';
|
|
9
9
|
|
|
10
10
|
import type {Texture} from '@luma.gl/core';
|
|
11
11
|
import type {Bounds} from '../utils/projection-utils';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
4
|
|
|
5
|
-
import {RenderPipelineParameters} from '@luma.gl/core';
|
|
5
|
+
import {Parameters, RenderPipelineParameters} from '@luma.gl/core';
|
|
6
6
|
import {Layer, Viewport, _LayersPass as LayersPass, LayersPassRenderOptions} from '@deck.gl/core';
|
|
7
7
|
import type {HeightMapBuilder} from './height-map-builder';
|
|
8
8
|
import type {TerrainCover} from './terrain-cover';
|
|
@@ -79,11 +79,15 @@ export class TerrainPass extends LayersPass {
|
|
|
79
79
|
});
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
protected getLayerParameters(
|
|
82
|
+
protected getLayerParameters(
|
|
83
|
+
layer: Layer<{}>,
|
|
84
|
+
layerIndex: number,
|
|
85
|
+
viewport: Viewport
|
|
86
|
+
): Parameters {
|
|
83
87
|
return {
|
|
84
88
|
...layer.props.parameters,
|
|
85
89
|
blend: true,
|
|
86
|
-
|
|
90
|
+
depthCompare: 'always',
|
|
87
91
|
...(layer.props.operation.includes('terrain') && TERRAIN_BLENDING)
|
|
88
92
|
};
|
|
89
93
|
}
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
_PickLayersPass as PickLayersPass
|
|
10
10
|
} from '@deck.gl/core';
|
|
11
11
|
import type {TerrainCover} from './terrain-cover';
|
|
12
|
+
import {Parameters} from '@luma.gl/core';
|
|
12
13
|
|
|
13
14
|
export type TerrainPickingPassRenderOptions = LayersPassRenderOptions & {
|
|
14
15
|
pickZ: boolean;
|
|
@@ -72,7 +73,7 @@ export class TerrainPickingPass extends PickLayersPass {
|
|
|
72
73
|
});
|
|
73
74
|
}
|
|
74
75
|
|
|
75
|
-
protected getLayerParameters(layer: Layer, layerIndex: number, viewport: Viewport):
|
|
76
|
+
protected getLayerParameters(layer: Layer, layerIndex: number, viewport: Viewport): Parameters {
|
|
76
77
|
let parameters: any;
|
|
77
78
|
if (this.drawParameters[layer.id]) {
|
|
78
79
|
parameters = this.drawParameters[layer.id];
|
|
@@ -80,7 +81,7 @@ export class TerrainPickingPass extends PickLayersPass {
|
|
|
80
81
|
parameters = super.getLayerParameters(layer, layerIndex, viewport);
|
|
81
82
|
parameters.blend = true;
|
|
82
83
|
}
|
|
83
|
-
return {...parameters,
|
|
84
|
+
return {...parameters, depthCompare: 'always'};
|
|
84
85
|
}
|
|
85
86
|
|
|
86
87
|
getShaderModuleProps(layer: Layer, effects: any, otherShaderModuleProps: Record<string, any>) {
|