@deck.gl-community/infovis-layers 9.3.7 → 9.4.0-alpha.1
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/index.cjs +1840 -1420
- package/dist/index.cjs.map +4 -4
- package/dist/layers/block-layer/block-layer-uniforms.d.ts +4 -3
- package/dist/layers/block-layer/block-layer-uniforms.d.ts.map +1 -1
- package/dist/layers/block-layer/block-layer-uniforms.js +4 -3
- package/dist/layers/block-layer/block-layer-uniforms.js.map +1 -1
- package/dist/layers/block-layer/block-layer-vertex.glsl.d.ts +1 -1
- package/dist/layers/block-layer/block-layer-vertex.glsl.js +4 -4
- package/dist/layers/block-layer/block-layer.d.ts +2 -0
- package/dist/layers/block-layer/block-layer.d.ts.map +1 -1
- package/dist/layers/block-layer/block-layer.js +23 -2
- package/dist/layers/block-layer/block-layer.js.map +1 -1
- package/dist/layers/block-layer/block-layer.wgsl.d.ts +4 -0
- package/dist/layers/block-layer/block-layer.wgsl.d.ts.map +1 -0
- package/dist/layers/block-layer/block-layer.wgsl.js +134 -0
- package/dist/layers/block-layer/block-layer.wgsl.js.map +1 -0
- package/dist/layers/fast-text-layer/fast-text-layer.d.ts +47 -0
- package/dist/layers/fast-text-layer/fast-text-layer.d.ts.map +1 -1
- package/dist/layers/fast-text-layer/fast-text-layer.js +5 -1
- package/dist/layers/fast-text-layer/fast-text-layer.js.map +1 -1
- package/dist/layers/fast-text-layer/fast-text-layer.wgsl.d.ts +4 -0
- package/dist/layers/fast-text-layer/fast-text-layer.wgsl.d.ts.map +1 -0
- package/dist/layers/fast-text-layer/fast-text-layer.wgsl.js +247 -0
- package/dist/layers/fast-text-layer/fast-text-layer.wgsl.js.map +1 -0
- package/dist/layers/time-delta-layer.d.ts.map +1 -1
- package/dist/layers/time-delta-layer.js +34 -17
- package/dist/layers/time-delta-layer.js.map +1 -1
- package/package.json +12 -12
- package/src/layers/block-layer/block-layer-uniforms.ts +4 -3
- package/src/layers/block-layer/block-layer-vertex.glsl.ts +4 -4
- package/src/layers/block-layer/block-layer.ts +24 -2
- package/src/layers/block-layer/block-layer.wgsl.ts +134 -0
- package/src/layers/fast-text-layer/fast-text-layer.ts +5 -1
- package/src/layers/fast-text-layer/fast-text-layer.wgsl.ts +247 -0
- package/src/layers/time-delta-layer.ts +34 -17
|
@@ -13,9 +13,10 @@ export type BlockProps = {
|
|
|
13
13
|
};
|
|
14
14
|
/** Shader module that defines uniforms consumed by {@link BlockLayer}. */
|
|
15
15
|
export declare const blockUniforms: {
|
|
16
|
-
readonly name: "
|
|
17
|
-
readonly
|
|
18
|
-
readonly
|
|
16
|
+
readonly name: "blockLayer";
|
|
17
|
+
readonly source: "";
|
|
18
|
+
readonly vs: "uniform blockLayerUniforms {\n highp int sizeUnits;\n highp float widthMinPixels;\n highp float heightMinPixels;\n highp float sizeMaxPixels;\n highp int lineWidthUnits;\n} blockLayer;\n";
|
|
19
|
+
readonly fs: "uniform blockLayerUniforms {\n highp int sizeUnits;\n highp float widthMinPixels;\n highp float heightMinPixels;\n highp float sizeMaxPixels;\n highp int lineWidthUnits;\n} blockLayer;\n";
|
|
19
20
|
readonly uniformTypes: {
|
|
20
21
|
readonly sizeUnits: "i32";
|
|
21
22
|
readonly widthMinPixels: "f32";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-layer-uniforms.d.ts","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer-uniforms.ts"],"names":[],"mappings":"AAgBA,wDAAwD;AACxD,MAAM,MAAM,UAAU,GAAG;IACvB,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,cAAc,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,aAAa,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"block-layer-uniforms.d.ts","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer-uniforms.ts"],"names":[],"mappings":"AAgBA,wDAAwD;AACxD,MAAM,MAAM,UAAU,GAAG;IACvB,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,cAAc,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,aAAa,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,aAAa;;;;;;;;;;;;CAYmB,CAAC"}
|
|
@@ -2,17 +2,18 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
4
|
const glslUniformBlock = `\
|
|
5
|
-
uniform
|
|
5
|
+
uniform blockLayerUniforms {
|
|
6
6
|
highp int sizeUnits;
|
|
7
7
|
highp float widthMinPixels;
|
|
8
8
|
highp float heightMinPixels;
|
|
9
9
|
highp float sizeMaxPixels;
|
|
10
10
|
highp int lineWidthUnits;
|
|
11
|
-
}
|
|
11
|
+
} blockLayer;
|
|
12
12
|
`;
|
|
13
13
|
/** Shader module that defines uniforms consumed by {@link BlockLayer}. */
|
|
14
14
|
export const blockUniforms = {
|
|
15
|
-
name: '
|
|
15
|
+
name: 'blockLayer',
|
|
16
|
+
source: '',
|
|
16
17
|
vs: glslUniformBlock,
|
|
17
18
|
fs: glslUniformBlock,
|
|
18
19
|
uniformTypes: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-layer-uniforms.js","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer-uniforms.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,+BAA+B;AAC/B,oCAAoC;AAIpC,MAAM,gBAAgB,GAAG;;;;;;;;CAQxB,CAAC;AAgBF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"block-layer-uniforms.js","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer-uniforms.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,+BAA+B;AAC/B,oCAAoC;AAIpC,MAAM,gBAAgB,GAAG;;;;;;;;CAQxB,CAAC;AAgBF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,YAAY;IAClB,MAAM,EAAE,EAAE;IACV,EAAE,EAAE,gBAAgB;IACpB,EAAE,EAAE,gBAAgB;IACpB,YAAY,EAAE;QACZ,SAAS,EAAE,KAAK;QAChB,cAAc,EAAE,KAAK;QACrB,eAAe,EAAE,KAAK;QACtB,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,KAAK;KACtB;CAC0C,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
declare const _default: "#version 300 es\n#define SHADER_NAME block-layer-vertex-shader\n\nin vec3 positions;\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec2 instanceSizes;\nin float instanceLineWidths;\nin vec4 instanceFillColors;\nin vec4 instanceLineColors;\nin vec3 instancePickingColors;\n\nout vec2 unitPosition;\nflat out vec4 vFillColor;\nflat out vec4 vLineColor;\nflat out float lineWidth;\nflat out vec2 size;\n\n// This needs to be added back to the project module\nvec2 project_size_to_pixel(vec2 size, int unit) {\n if (unit == UNIT_PIXELS) return size;\n if (unit == UNIT_COMMON && project.projectionMode != PROJECTION_MODE_IDENTITY) {\n return size * project.scale;\n }\n return project_size(size) * project.scale;\n}\n\nfloat clamp_signed_size(float size, float minPixels, float maxPixels) {\n float clampedMagnitude = clamp(abs(size), minPixels, maxPixels);\n if (size < 0.0) {\n return -clampedMagnitude;\n }\n return clampedMagnitude;\n}\n\nvoid main(void) {\n geometry.worldPosition = instancePositions;\n geometry.pickingColor = instancePickingColors;\n geometry.uv = positions.xy;\n\n vec2 pixelSize = project_size_to_pixel(instanceSizes,
|
|
1
|
+
declare const _default: "#version 300 es\n#define SHADER_NAME block-layer-vertex-shader\n\nin vec3 positions;\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec2 instanceSizes;\nin float instanceLineWidths;\nin vec4 instanceFillColors;\nin vec4 instanceLineColors;\nin vec3 instancePickingColors;\n\nout vec2 unitPosition;\nflat out vec4 vFillColor;\nflat out vec4 vLineColor;\nflat out float lineWidth;\nflat out vec2 size;\n\n// This needs to be added back to the project module\nvec2 project_size_to_pixel(vec2 size, int unit) {\n if (unit == UNIT_PIXELS) return size;\n if (unit == UNIT_COMMON && project.projectionMode != PROJECTION_MODE_IDENTITY) {\n return size * project.scale;\n }\n return project_size(size) * project.scale;\n}\n\nfloat clamp_signed_size(float size, float minPixels, float maxPixels) {\n float clampedMagnitude = clamp(abs(size), minPixels, maxPixels);\n if (size < 0.0) {\n return -clampedMagnitude;\n }\n return clampedMagnitude;\n}\n\nvoid main(void) {\n geometry.worldPosition = instancePositions;\n geometry.pickingColor = instancePickingColors;\n geometry.uv = positions.xy;\n\n vec2 pixelSize = project_size_to_pixel(instanceSizes, blockLayer.sizeUnits);\n pixelSize.x = clamp_signed_size(pixelSize.x, blockLayer.widthMinPixels, blockLayer.sizeMaxPixels);\n pixelSize.y = clamp_signed_size(pixelSize.y, blockLayer.heightMinPixels, blockLayer.sizeMaxPixels);\n unitPosition = positions.xy;\n size = pixelSize;\n lineWidth = project_size_to_pixel(vec2(instanceLineWidths, 0.0), blockLayer.lineWidthUnits).x;\n\n // Find the center of the point and add the current vertex\n vec3 offset = vec3(unitPosition * project_pixel_size(pixelSize), 0.0);\n DECKGL_FILTER_SIZE(offset, geometry);\n\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, offset, geometry.position);\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n // Apply opacity to instance color, or return instance picking color\n vFillColor = vec4(instanceFillColors.rgb, instanceFillColors.a * layer.opacity);\n DECKGL_FILTER_COLOR(vFillColor, geometry);\n\n vLineColor = vec4(instanceLineColors.rgb, instanceLineColors.a * layer.opacity);\n DECKGL_FILTER_COLOR(vLineColor, geometry);\n}\n";
|
|
2
2
|
export default _default;
|
|
3
3
|
//# sourceMappingURL=block-layer-vertex.glsl.d.ts.map
|
|
@@ -42,12 +42,12 @@ void main(void) {
|
|
|
42
42
|
geometry.pickingColor = instancePickingColors;
|
|
43
43
|
geometry.uv = positions.xy;
|
|
44
44
|
|
|
45
|
-
vec2 pixelSize = project_size_to_pixel(instanceSizes,
|
|
46
|
-
pixelSize.x = clamp_signed_size(pixelSize.x,
|
|
47
|
-
pixelSize.y = clamp_signed_size(pixelSize.y,
|
|
45
|
+
vec2 pixelSize = project_size_to_pixel(instanceSizes, blockLayer.sizeUnits);
|
|
46
|
+
pixelSize.x = clamp_signed_size(pixelSize.x, blockLayer.widthMinPixels, blockLayer.sizeMaxPixels);
|
|
47
|
+
pixelSize.y = clamp_signed_size(pixelSize.y, blockLayer.heightMinPixels, blockLayer.sizeMaxPixels);
|
|
48
48
|
unitPosition = positions.xy;
|
|
49
49
|
size = pixelSize;
|
|
50
|
-
lineWidth = project_size_to_pixel(vec2(instanceLineWidths, 0.0),
|
|
50
|
+
lineWidth = project_size_to_pixel(vec2(instanceLineWidths, 0.0), blockLayer.lineWidthUnits).x;
|
|
51
51
|
|
|
52
52
|
// Find the center of the point and add the current vertex
|
|
53
53
|
vec3 offset = vec3(unitPosition * project_pixel_size(pixelSize), 0.0);
|
|
@@ -62,6 +62,8 @@ export declare class BlockLayer<DataT = any, ExtraPropsT extends {} = {}> extend
|
|
|
62
62
|
model?: Model;
|
|
63
63
|
};
|
|
64
64
|
getShaders(): any;
|
|
65
|
+
/** WebGPU consumes float32 positions directly, including external binary attributes. */
|
|
66
|
+
use64bitPositions(): boolean;
|
|
65
67
|
initializeState(): void;
|
|
66
68
|
updateState(params: UpdateParameters<this>): void;
|
|
67
69
|
draw(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-layer.d.ts","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,QAAQ,EACR,gBAAgB,EAEhB,KAAK,EACL,YAAY,EACZ,KAAK,EACL,eAAe,EACf,UAAU,EAEV,QAAQ,EAGR,IAAI,EACJ,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAW,KAAK,EAAC,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"block-layer.d.ts","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,QAAQ,EACR,gBAAgB,EAEhB,KAAK,EACL,YAAY,EACZ,KAAK,EACL,eAAe,EACf,UAAU,EAEV,QAAQ,EAGR,IAAI,EACJ,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAW,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAwBhD,kDAAkD;AAClD,MAAM,MAAM,eAAe,CAAC,KAAK,GAAG,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC;AAEpF,sCAAsC;AACtC,KAAK,gBAAgB,CAAC,KAAK,IAAI;IAC7B,mDAAmD;IACnD,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;IAC7B;;;OAGG;IACH,SAAS,CAAC,EAAE,IAAI,CAAC;IAEjB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,cAAc,CAAC,EAAE,IAAI,CAAC;IAEtB;;;OAGG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAEvC;;;OAGG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAChD,6DAA6D;IAC7D,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5C;;;OAGG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACtC;;;OAGG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;CACvC,CAAC;AAEF,4EAA4E;AAC5E,qBAAa,UAAU,CAAC,KAAK,GAAG,GAAG,EAAE,WAAW,SAAS,EAAE,GAAG,EAAE,CAAE,SAAQ,KAAK,CAC7E,WAAW,GAAG,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAChD;IACC,OAAgB,SAAS,SAAgB;IACzC,OAAgB,YAAY,yCAAgB;IAEnC,KAAK,EAAE;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAM;IAEE,UAAU;IASnB,wFAAwF;IAC/E,iBAAiB,IAAI,OAAO;IAIrC,eAAe;IAoCN,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,IAAI;IAUjD,IAAI;IAcb,SAAS,CAAC,SAAS,IAAI,KAAK;CA+B7B"}
|
|
@@ -6,6 +6,7 @@ import { Geometry, Model } from '@luma.gl/engine';
|
|
|
6
6
|
import fs from './block-layer-fragment.glsl';
|
|
7
7
|
import { blockUniforms } from "./block-layer-uniforms.js";
|
|
8
8
|
import vs from './block-layer-vertex.glsl';
|
|
9
|
+
import source from './block-layer.wgsl';
|
|
9
10
|
const DEFAULT_COLOR = [0, 0, 0, 255];
|
|
10
11
|
const defaultProps = {
|
|
11
12
|
sizeUnits: 'meters',
|
|
@@ -26,11 +27,16 @@ export class BlockLayer extends Layer {
|
|
|
26
27
|
state = {};
|
|
27
28
|
getShaders() {
|
|
28
29
|
return super.getShaders({
|
|
30
|
+
source,
|
|
29
31
|
vs,
|
|
30
32
|
fs,
|
|
31
33
|
modules: [project32, color, picking, blockUniforms]
|
|
32
34
|
});
|
|
33
35
|
}
|
|
36
|
+
/** WebGPU consumes float32 positions directly, including external binary attributes. */
|
|
37
|
+
use64bitPositions() {
|
|
38
|
+
return this.context?.device?.type !== 'webgpu' && super.use64bitPositions();
|
|
39
|
+
}
|
|
34
40
|
initializeState() {
|
|
35
41
|
this.getAttributeManager().addInstanced({
|
|
36
42
|
instancePositions: {
|
|
@@ -85,16 +91,31 @@ export class BlockLayer extends Layer {
|
|
|
85
91
|
sizeMaxPixels,
|
|
86
92
|
lineWidthUnits: UNIT[lineWidthUnits]
|
|
87
93
|
};
|
|
88
|
-
model.shaderInputs.setProps({
|
|
94
|
+
model.shaderInputs.setProps({ blockLayer: blockProps });
|
|
89
95
|
model.draw(this.context.renderPass);
|
|
90
96
|
}
|
|
91
97
|
_getModel() {
|
|
92
98
|
// a square
|
|
93
99
|
const positions = [0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0];
|
|
100
|
+
const bufferLayout = this.getAttributeManager().getBufferLayouts();
|
|
101
|
+
const webgpuAttributes = new Set([
|
|
102
|
+
'instancePositions',
|
|
103
|
+
'instanceSizes',
|
|
104
|
+
'instanceLineWidths',
|
|
105
|
+
'instanceLineColors',
|
|
106
|
+
'instanceFillColors',
|
|
107
|
+
'instancePickingColors'
|
|
108
|
+
]);
|
|
109
|
+
const webgpuBufferLayout = bufferLayout
|
|
110
|
+
.map(layout => ({
|
|
111
|
+
...layout,
|
|
112
|
+
attributes: layout.attributes?.filter(({ attribute }) => webgpuAttributes.has(attribute))
|
|
113
|
+
}))
|
|
114
|
+
.filter(layout => !layout.attributes || layout.attributes.length > 0);
|
|
94
115
|
return new Model(this.context.device, {
|
|
95
116
|
...this.getShaders(),
|
|
96
117
|
id: this.props.id,
|
|
97
|
-
bufferLayout: this.
|
|
118
|
+
bufferLayout: this.context.device.type === 'webgpu' ? webgpuBufferLayout : bufferLayout,
|
|
98
119
|
geometry: new Geometry({
|
|
99
120
|
topology: 'triangle-strip',
|
|
100
121
|
attributes: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-layer.js","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAGL,KAAK,EAGL,KAAK,EAGL,OAAO,EAEP,SAAS,EACT,IAAI,EAGL,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,QAAQ,EAAE,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC7C,OAAO,EAAa,aAAa,EAAC,kCAA+B;AACjE,OAAO,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"block-layer.js","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** WebGPU vertex and fragment shaders for {@link BlockLayer}. */
|
|
2
|
+
declare const _default: "\nstruct BlockUniforms {\n sizeUnits: i32,\n widthMinPixels: f32,\n heightMinPixels: f32,\n sizeMaxPixels: f32,\n lineWidthUnits: i32,\n};\n\n@group(0) @binding(auto) var<uniform> blockLayer: BlockUniforms;\n\nstruct BlockAttributes {\n @location(0) positions: vec3<f32>,\n @location(1) instancePositions: vec3<f32>,\n @location(2) instanceSizes: vec2<f32>,\n @location(3) instanceLineWidths: f32,\n @location(4) instanceLineColors: vec4<f32>,\n @location(5) instanceFillColors: vec4<f32>,\n @location(6) instancePickingColors: vec3<f32>,\n};\n\nstruct BlockVaryings {\n @builtin(position) position: vec4<f32>,\n @location(0) unitPosition: vec2<f32>,\n @location(1) @interpolate(flat) fillColor: vec4<f32>,\n @location(2) @interpolate(flat) lineColor: vec4<f32>,\n @location(3) @interpolate(flat) lineWidth: f32,\n @location(4) @interpolate(flat) size: vec2<f32>,\n @location(5) @interpolate(flat) pickingColor: vec3<f32>,\n};\n\nfn block_size_to_pixels(size: vec2<f32>, unit: i32) -> vec2<f32> {\n return vec2<f32>(\n project_unit_size_to_pixel(size.x, unit),\n project_unit_size_to_pixel(size.y, unit)\n );\n}\n\nfn block_clamp_signed_size(size: f32, minimum: f32, maximum: f32) -> f32 {\n return select(1.0, -1.0, size < 0.0) * clamp(abs(size), minimum, maximum);\n}\n\n@vertex\nfn vertexMain(attributes: BlockAttributes) -> BlockVaryings {\n geometry.worldPosition = attributes.instancePositions;\n geometry.pickingColor = attributes.instancePickingColors;\n geometry.uv = attributes.positions.xy;\n\n var pixelSize = block_size_to_pixels(attributes.instanceSizes, blockLayer.sizeUnits);\n pixelSize.x = block_clamp_signed_size(\n pixelSize.x,\n blockLayer.widthMinPixels,\n blockLayer.sizeMaxPixels\n );\n pixelSize.y = block_clamp_signed_size(\n pixelSize.y,\n blockLayer.heightMinPixels,\n blockLayer.sizeMaxPixels\n );\n\n let offset = vec3<f32>(\n attributes.positions.xy * project_pixel_size_vec2(pixelSize),\n 0.0\n );\n let projected = project_position_to_clipspace_and_commonspace(\n attributes.instancePositions,\n vec3<f32>(0.0),\n offset\n );\n geometry.position = projected.commonPosition;\n\n var varyings: BlockVaryings;\n varyings.position = projected.clipPosition;\n varyings.unitPosition = attributes.positions.xy;\n varyings.fillColor = vec4<f32>(\n attributes.instanceFillColors.rgb,\n attributes.instanceFillColors.a * layer.opacity\n );\n varyings.lineColor = vec4<f32>(\n attributes.instanceLineColors.rgb,\n attributes.instanceLineColors.a * layer.opacity\n );\n varyings.lineWidth = project_unit_size_to_pixel(\n attributes.instanceLineWidths,\n blockLayer.lineWidthUnits\n );\n varyings.size = pixelSize;\n varyings.pickingColor = attributes.instancePickingColors;\n return varyings;\n}\n\n@fragment\nfn fragmentMain(varyings: BlockVaryings) -> @location(0) vec4<f32> {\n let relativePosition = varyings.unitPosition * varyings.size;\n let distanceToBorder = min(\n min(relativePosition.x, relativePosition.y),\n min(varyings.size.x - relativePosition.x, varyings.size.y - relativePosition.y)\n );\n var fragColor = select(\n varyings.fillColor,\n varyings.lineColor,\n varyings.lineWidth > 0.0 && distanceToBorder <= varyings.lineWidth\n );\n\n if (picking.isActive > 0.5) {\n if (!picking_isColorValid(varyings.pickingColor)) {\n discard;\n }\n return vec4<f32>(picking_normalizeColor(varyings.pickingColor), 1.0);\n }\n\n if (picking.isHighlightActive > 0.5) {\n let highlightedColor = picking_normalizeColor(picking.highlightedObjectColor);\n let objectColor = picking_normalizeColor(varyings.pickingColor);\n if (picking_isColorZero(abs(objectColor - highlightedColor))) {\n let highlightAlpha = picking.highlightColor.a;\n let blendedAlpha = highlightAlpha + fragColor.a * (1.0 - highlightAlpha);\n if (blendedAlpha > 0.0) {\n fragColor = vec4<f32>(\n mix(fragColor.rgb, picking.highlightColor.rgb, highlightAlpha / blendedAlpha),\n blendedAlpha\n );\n }\n }\n }\n\n return deckgl_premultiplied_alpha(fragColor);\n}\n";
|
|
3
|
+
export default _default;
|
|
4
|
+
//# sourceMappingURL=block-layer.wgsl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"block-layer.wgsl.d.ts","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer.wgsl.ts"],"names":[],"mappings":"AAIA,iEAAiE;;AACjE,wBAgIE"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
// deck.gl-community
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
/** WebGPU vertex and fragment shaders for {@link BlockLayer}. */
|
|
5
|
+
export default /* wgsl */ `
|
|
6
|
+
struct BlockUniforms {
|
|
7
|
+
sizeUnits: i32,
|
|
8
|
+
widthMinPixels: f32,
|
|
9
|
+
heightMinPixels: f32,
|
|
10
|
+
sizeMaxPixels: f32,
|
|
11
|
+
lineWidthUnits: i32,
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
@group(0) @binding(auto) var<uniform> blockLayer: BlockUniforms;
|
|
15
|
+
|
|
16
|
+
struct BlockAttributes {
|
|
17
|
+
@location(0) positions: vec3<f32>,
|
|
18
|
+
@location(1) instancePositions: vec3<f32>,
|
|
19
|
+
@location(2) instanceSizes: vec2<f32>,
|
|
20
|
+
@location(3) instanceLineWidths: f32,
|
|
21
|
+
@location(4) instanceLineColors: vec4<f32>,
|
|
22
|
+
@location(5) instanceFillColors: vec4<f32>,
|
|
23
|
+
@location(6) instancePickingColors: vec3<f32>,
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
struct BlockVaryings {
|
|
27
|
+
@builtin(position) position: vec4<f32>,
|
|
28
|
+
@location(0) unitPosition: vec2<f32>,
|
|
29
|
+
@location(1) @interpolate(flat) fillColor: vec4<f32>,
|
|
30
|
+
@location(2) @interpolate(flat) lineColor: vec4<f32>,
|
|
31
|
+
@location(3) @interpolate(flat) lineWidth: f32,
|
|
32
|
+
@location(4) @interpolate(flat) size: vec2<f32>,
|
|
33
|
+
@location(5) @interpolate(flat) pickingColor: vec3<f32>,
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
fn block_size_to_pixels(size: vec2<f32>, unit: i32) -> vec2<f32> {
|
|
37
|
+
return vec2<f32>(
|
|
38
|
+
project_unit_size_to_pixel(size.x, unit),
|
|
39
|
+
project_unit_size_to_pixel(size.y, unit)
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
fn block_clamp_signed_size(size: f32, minimum: f32, maximum: f32) -> f32 {
|
|
44
|
+
return select(1.0, -1.0, size < 0.0) * clamp(abs(size), minimum, maximum);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
@vertex
|
|
48
|
+
fn vertexMain(attributes: BlockAttributes) -> BlockVaryings {
|
|
49
|
+
geometry.worldPosition = attributes.instancePositions;
|
|
50
|
+
geometry.pickingColor = attributes.instancePickingColors;
|
|
51
|
+
geometry.uv = attributes.positions.xy;
|
|
52
|
+
|
|
53
|
+
var pixelSize = block_size_to_pixels(attributes.instanceSizes, blockLayer.sizeUnits);
|
|
54
|
+
pixelSize.x = block_clamp_signed_size(
|
|
55
|
+
pixelSize.x,
|
|
56
|
+
blockLayer.widthMinPixels,
|
|
57
|
+
blockLayer.sizeMaxPixels
|
|
58
|
+
);
|
|
59
|
+
pixelSize.y = block_clamp_signed_size(
|
|
60
|
+
pixelSize.y,
|
|
61
|
+
blockLayer.heightMinPixels,
|
|
62
|
+
blockLayer.sizeMaxPixels
|
|
63
|
+
);
|
|
64
|
+
|
|
65
|
+
let offset = vec3<f32>(
|
|
66
|
+
attributes.positions.xy * project_pixel_size_vec2(pixelSize),
|
|
67
|
+
0.0
|
|
68
|
+
);
|
|
69
|
+
let projected = project_position_to_clipspace_and_commonspace(
|
|
70
|
+
attributes.instancePositions,
|
|
71
|
+
vec3<f32>(0.0),
|
|
72
|
+
offset
|
|
73
|
+
);
|
|
74
|
+
geometry.position = projected.commonPosition;
|
|
75
|
+
|
|
76
|
+
var varyings: BlockVaryings;
|
|
77
|
+
varyings.position = projected.clipPosition;
|
|
78
|
+
varyings.unitPosition = attributes.positions.xy;
|
|
79
|
+
varyings.fillColor = vec4<f32>(
|
|
80
|
+
attributes.instanceFillColors.rgb,
|
|
81
|
+
attributes.instanceFillColors.a * layer.opacity
|
|
82
|
+
);
|
|
83
|
+
varyings.lineColor = vec4<f32>(
|
|
84
|
+
attributes.instanceLineColors.rgb,
|
|
85
|
+
attributes.instanceLineColors.a * layer.opacity
|
|
86
|
+
);
|
|
87
|
+
varyings.lineWidth = project_unit_size_to_pixel(
|
|
88
|
+
attributes.instanceLineWidths,
|
|
89
|
+
blockLayer.lineWidthUnits
|
|
90
|
+
);
|
|
91
|
+
varyings.size = pixelSize;
|
|
92
|
+
varyings.pickingColor = attributes.instancePickingColors;
|
|
93
|
+
return varyings;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
@fragment
|
|
97
|
+
fn fragmentMain(varyings: BlockVaryings) -> @location(0) vec4<f32> {
|
|
98
|
+
let relativePosition = varyings.unitPosition * varyings.size;
|
|
99
|
+
let distanceToBorder = min(
|
|
100
|
+
min(relativePosition.x, relativePosition.y),
|
|
101
|
+
min(varyings.size.x - relativePosition.x, varyings.size.y - relativePosition.y)
|
|
102
|
+
);
|
|
103
|
+
var fragColor = select(
|
|
104
|
+
varyings.fillColor,
|
|
105
|
+
varyings.lineColor,
|
|
106
|
+
varyings.lineWidth > 0.0 && distanceToBorder <= varyings.lineWidth
|
|
107
|
+
);
|
|
108
|
+
|
|
109
|
+
if (picking.isActive > 0.5) {
|
|
110
|
+
if (!picking_isColorValid(varyings.pickingColor)) {
|
|
111
|
+
discard;
|
|
112
|
+
}
|
|
113
|
+
return vec4<f32>(picking_normalizeColor(varyings.pickingColor), 1.0);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (picking.isHighlightActive > 0.5) {
|
|
117
|
+
let highlightedColor = picking_normalizeColor(picking.highlightedObjectColor);
|
|
118
|
+
let objectColor = picking_normalizeColor(varyings.pickingColor);
|
|
119
|
+
if (picking_isColorZero(abs(objectColor - highlightedColor))) {
|
|
120
|
+
let highlightAlpha = picking.highlightColor.a;
|
|
121
|
+
let blendedAlpha = highlightAlpha + fragColor.a * (1.0 - highlightAlpha);
|
|
122
|
+
if (blendedAlpha > 0.0) {
|
|
123
|
+
fragColor = vec4<f32>(
|
|
124
|
+
mix(fragColor.rgb, picking.highlightColor.rgb, highlightAlpha / blendedAlpha),
|
|
125
|
+
blendedAlpha
|
|
126
|
+
);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
return deckgl_premultiplied_alpha(fragColor);
|
|
132
|
+
}
|
|
133
|
+
`;
|
|
134
|
+
//# sourceMappingURL=block-layer.wgsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"block-layer.wgsl.js","sourceRoot":"","sources":["../../../src/layers/block-layer/block-layer.wgsl.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,+BAA+B;AAC/B,oCAAoC;AAEpC,iEAAiE;AACjE,eAAe,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgIzB,CAAC"}
|
|
@@ -144,5 +144,52 @@ type FastTextLayoutSourceSignature = {
|
|
|
144
144
|
/** Total bytes across UTF-8 value buffers. */
|
|
145
145
|
textUtf8ColumnValueByteLength: number;
|
|
146
146
|
};
|
|
147
|
+
/** Shader module shared by the GLSL and WGSL packed-glyph renderers. */
|
|
148
|
+
export declare const fastTextUniforms: {
|
|
149
|
+
readonly name: "fastText";
|
|
150
|
+
readonly source: "";
|
|
151
|
+
readonly vs: `layout(std140) uniform fastTextUniforms {
|
|
152
|
+
vec2 fontAtlasSize;
|
|
153
|
+
float fontSize;
|
|
154
|
+
float size;
|
|
155
|
+
float sizeScale;
|
|
156
|
+
float sizeMinPixels;
|
|
157
|
+
float sizeMaxPixels;
|
|
158
|
+
vec2 pixelOffset;
|
|
159
|
+
bool billboard;
|
|
160
|
+
highp int sizeUnits;
|
|
161
|
+
float alphaCutoff;
|
|
162
|
+
bool sdfEnabled;
|
|
163
|
+
float sdfBuffer;
|
|
164
|
+
float sdfGamma;
|
|
165
|
+
vec2 contentCutoffPixels;
|
|
166
|
+
highp ivec2 contentAlign;
|
|
167
|
+
bool flipY;
|
|
168
|
+
} fastText;
|
|
169
|
+
|
|
170
|
+
#define FAST_TEXT_ALIGN_MODE_START ${number}
|
|
171
|
+
#define FAST_TEXT_ALIGN_MODE_CENTER ${number}
|
|
172
|
+
#define FAST_TEXT_ALIGN_MODE_END ${number}
|
|
173
|
+
`;
|
|
174
|
+
readonly fs: "layout(std140) uniform fastTextUniforms {\n vec2 fontAtlasSize;\n float fontSize;\n float size;\n float sizeScale;\n float sizeMinPixels;\n float sizeMaxPixels;\n vec2 pixelOffset;\n bool billboard;\n highp int sizeUnits;\n float alphaCutoff;\n bool sdfEnabled;\n float sdfBuffer;\n float sdfGamma;\n vec2 contentCutoffPixels;\n highp ivec2 contentAlign;\n bool flipY;\n} fastText;\n";
|
|
175
|
+
readonly uniformTypes: {
|
|
176
|
+
readonly fontAtlasSize: "vec2<f32>";
|
|
177
|
+
readonly fontSize: "f32";
|
|
178
|
+
readonly size: "f32";
|
|
179
|
+
readonly sizeScale: "f32";
|
|
180
|
+
readonly sizeMinPixels: "f32";
|
|
181
|
+
readonly sizeMaxPixels: "f32";
|
|
182
|
+
readonly pixelOffset: "vec2<f32>";
|
|
183
|
+
readonly billboard: "f32";
|
|
184
|
+
readonly sizeUnits: "i32";
|
|
185
|
+
readonly alphaCutoff: "f32";
|
|
186
|
+
readonly sdfEnabled: "f32";
|
|
187
|
+
readonly sdfBuffer: "f32";
|
|
188
|
+
readonly sdfGamma: "f32";
|
|
189
|
+
readonly contentCutoffPixels: "vec2<f32>";
|
|
190
|
+
readonly contentAlign: "vec2<i32>";
|
|
191
|
+
readonly flipY: "f32";
|
|
192
|
+
};
|
|
193
|
+
};
|
|
147
194
|
export {};
|
|
148
195
|
//# sourceMappingURL=fast-text-layer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fast-text-layer.d.ts","sourceRoot":"","sources":["../../../src/layers/fast-text-layer/fast-text-layer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,EAAkB,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAC,MAAM,EAAE,OAAO,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAW,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAUhD,OAAO,EAAkC,wBAAwB,EAAC,wBAAqB;
|
|
1
|
+
{"version":3,"file":"fast-text-layer.d.ts","sourceRoot":"","sources":["../../../src/layers/fast-text-layer/fast-text-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import { Geometry, Model } from '@luma.gl/engine';
|
|
|
6
6
|
import { Log } from '@probe.gl/log';
|
|
7
7
|
import { buildFastTextGlyphData, buildFastTextUtf8ColumnSource, collectFastTextCharacterSet, FAST_TEXT_GLYPH_VERTEX_BYTE_STRIDE, updateFastTextDynamicGlyphAttributes } from "./fast-text-layout.js";
|
|
8
8
|
import { DEFAULT_FAST_TEXT_FONT_SETTINGS, FastTextFontAtlasManager } from "./font-atlas.js";
|
|
9
|
+
import FAST_TEXT_WGSL from './fast-text-layer.wgsl';
|
|
9
10
|
const defaultProps = {
|
|
10
11
|
billboard: true,
|
|
11
12
|
sizeScale: { type: 'number', value: 1, min: 0 },
|
|
@@ -48,6 +49,7 @@ export class FastTextLayer extends Layer {
|
|
|
48
49
|
/** Return the shader set used by the direct glyph instance model. */
|
|
49
50
|
getShaders() {
|
|
50
51
|
return super.getShaders({
|
|
52
|
+
source: FAST_TEXT_WGSL,
|
|
51
53
|
vs: FAST_TEXT_VS,
|
|
52
54
|
fs: FAST_TEXT_FS,
|
|
53
55
|
modules: [project32, color, fastTextUniforms]
|
|
@@ -309,8 +311,10 @@ const FAST_TEXT_ALIGN_END = FAST_TEXT_CONTENT_ALIGN.end;
|
|
|
309
311
|
const FAST_TEXT_SDF_BUFFER = 192.0 / 256.0;
|
|
310
312
|
const fastTextLog = new Log({ id: 'trace-layers' });
|
|
311
313
|
const FAST_TEXT_PROBE_LABEL_STYLE = 'background:#f59e0b;color:#111827;font-weight:700;padding:2px 8px;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;';
|
|
312
|
-
|
|
314
|
+
/** Shader module shared by the GLSL and WGSL packed-glyph renderers. */
|
|
315
|
+
export const fastTextUniforms = {
|
|
313
316
|
name: 'fastText',
|
|
317
|
+
source: '',
|
|
314
318
|
vs: `\
|
|
315
319
|
layout(std140) uniform fastTextUniforms {
|
|
316
320
|
vec2 fontAtlasSize;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fast-text-layer.js","sourceRoot":"","sources":["../../../src/layers/fast-text-layer/fast-text-layer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fast-text-layer.js","sourceRoot":"","sources":["../../../src/layers/fast-text-layer/fast-text-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** WebGPU shaders for packed glyphs, following luma.gl's text-rendering conventions. */
|
|
2
|
+
declare const _default: "\nstruct FastTextUniforms {\n fontAtlasSize: vec2<f32>,\n fontSize: f32,\n size: f32,\n sizeScale: f32,\n sizeMinPixels: f32,\n sizeMaxPixels: f32,\n pixelOffset: vec2<f32>,\n billboard: f32,\n sizeUnits: i32,\n alphaCutoff: f32,\n sdfEnabled: f32,\n sdfBuffer: f32,\n sdfGamma: f32,\n contentCutoffPixels: vec2<f32>,\n contentAlign: vec2<i32>,\n flipY: f32,\n};\n\n@group(0) @binding(auto) var<uniform> fastText: FastTextUniforms;\n@group(0) @binding(auto) var fontAtlasTexture: texture_2d<f32>;\n@group(0) @binding(auto) var fontAtlasTextureSampler: sampler;\n\nstruct FastTextAttributes {\n @location(0) positions: vec2<f32>,\n @location(1) instancePositions: vec2<f32>,\n @location(2) instanceGlyphOffsets: vec2<i32>,\n @location(3) instanceGlyphFrames: vec4<u32>,\n @location(4) instanceClipRects: vec4<i32>,\n @location(5) instanceColors: vec4<f32>,\n};\n\nstruct FastTextVaryings {\n @builtin(position) position: vec4<f32>,\n @location(0) color: vec4<f32>,\n @location(1) textureCoords: vec2<f32>,\n @location(2) uv: vec2<f32>,\n};\n\nstruct FastTextClipResult {\n position: vec4<f32>,\n pixelOffset: vec2<f32>,\n};\n\nfn fast_text_alignment_pixel_offset(\n anchor: f32,\n extent: f32,\n clipStart: f32,\n clipEnd: f32,\n mode: i32\n) -> f32 {\n if (clipEnd < clipStart) {\n return 0.0;\n }\n if (mode == 1) {\n return max(-(anchor + clipStart), 0.0);\n }\n if (mode == 2) {\n let visibleMin = max(0.0, anchor + clipStart);\n let visibleMax = min(extent, anchor + clipEnd);\n return select(0.0, (visibleMin + visibleMax) * 0.5 - anchor, visibleMin < visibleMax);\n }\n if (mode == 3) {\n return min(extent - (anchor + clipEnd), 0.0);\n }\n return 0.0;\n}\n\nfn fast_text_clip_glyph_vertex(\n initialPixelOffset: vec2<f32>,\n anchorPositionScreen: vec2<f32>,\n clipRect: vec4<i32>,\n initialPosition: vec4<f32>\n) -> FastTextClipResult {\n var result: FastTextClipResult;\n result.position = initialPosition;\n result.pixelOffset = initialPixelOffset;\n\n let clipRectFloat = vec4<f32>(clipRect);\n var clipXY = project_size_vec2(clipRectFloat.xy) * project.scale;\n let clipWH = project_size_vec2(clipRectFloat.zw) * project.scale;\n\n if (fastText.flipY > 0.5) {\n clipXY.y = -clipXY.y - clipWH.y;\n }\n\n if (fastText.contentAlign.x > 0 || fastText.contentAlign.y > 0) {\n let viewportPixels = project.viewportSize / project.devicePixelRatio;\n let scrollPixels = vec2<f32>(\n fast_text_alignment_pixel_offset(\n anchorPositionScreen.x,\n viewportPixels.x,\n clipXY.x,\n clipXY.x + clipWH.x,\n fastText.contentAlign.x\n ),\n -fast_text_alignment_pixel_offset(\n anchorPositionScreen.y,\n viewportPixels.y,\n -clipXY.y - clipWH.y,\n -clipXY.y,\n fastText.contentAlign.y\n )\n );\n result.pixelOffset += scrollPixels;\n result.position = vec4<f32>(\n result.position.xy + project_pixel_size_to_clipspace(scrollPixels),\n result.position.zw\n );\n }\n\n if (clipRectFloat.z >= 0.0) {\n if (result.pixelOffset.x < clipXY.x || result.pixelOffset.x > clipXY.x + clipWH.x) {\n result.position = vec4<f32>(0.0);\n } else if (fastText.contentCutoffPixels.x > 0.0) {\n let viewportWidth = project.viewportSize.x / project.devicePixelRatio;\n let left = max(anchorPositionScreen.x + clipXY.x, 0.0);\n let right = min(anchorPositionScreen.x + clipXY.x + clipWH.x, viewportWidth);\n if (right - left < fastText.contentCutoffPixels.x) {\n result.position = vec4<f32>(0.0);\n }\n }\n }\n\n if (clipRectFloat.w >= 0.0) {\n if (result.pixelOffset.y < clipXY.y || result.pixelOffset.y > clipXY.y + clipWH.y) {\n result.position = vec4<f32>(0.0);\n } else if (fastText.contentCutoffPixels.y > 0.0) {\n let viewportHeight = project.viewportSize.y / project.devicePixelRatio;\n let top = max(anchorPositionScreen.y - clipXY.y - clipWH.y, 0.0);\n let bottom = min(anchorPositionScreen.y - clipXY.y, viewportHeight);\n if (bottom - top < fastText.contentCutoffPixels.y) {\n result.position = vec4<f32>(0.0);\n }\n }\n }\n\n return result;\n}\n\n@vertex\nfn vertexMain(attributes: FastTextAttributes) -> FastTextVaryings {\n let worldPosition = vec3<f32>(attributes.instancePositions, 0.0);\n geometry.worldPosition = worldPosition;\n geometry.uv = attributes.positions;\n\n let glyphFrame = vec4<f32>(attributes.instanceGlyphFrames);\n let glyphSize = glyphFrame.zw;\n let sizePixels = clamp(\n project_unit_size_to_pixel(fastText.size * fastText.sizeScale, fastText.sizeUnits),\n fastText.sizeMinPixels,\n fastText.sizeMaxPixels\n );\n let instanceScale = select(sizePixels / fastText.fontSize, 0.0, fastText.fontSize == 0.0);\n var pixelOffset = vec2<f32>(attributes.instanceGlyphOffsets) + attributes.positions * glyphSize;\n pixelOffset = pixelOffset * instanceScale + fastText.pixelOffset;\n pixelOffset.y = -pixelOffset.y;\n\n var clipPosition: vec4<f32>;\n var anchorPositionClip: vec4<f32>;\n\n if (fastText.billboard > 0.5) {\n let projected = project_position_to_clipspace_and_commonspace(\n worldPosition,\n vec3<f32>(0.0),\n vec3<f32>(0.0)\n );\n geometry.position = projected.commonPosition;\n anchorPositionClip = projected.clipPosition;\n clipPosition = vec4<f32>(\n projected.clipPosition.xy + project_pixel_size_to_clipspace(pixelOffset),\n projected.clipPosition.zw\n );\n } else {\n var offsetCommon = vec3<f32>(project_pixel_size_vec2(pixelOffset), 0.0);\n if (fastText.flipY > 0.5) {\n offsetCommon.y = -offsetCommon.y;\n }\n let projected = project_position_to_clipspace_and_commonspace(\n worldPosition,\n vec3<f32>(0.0),\n offsetCommon\n );\n geometry.position = projected.commonPosition;\n anchorPositionClip = project_position_to_clipspace(\n worldPosition,\n vec3<f32>(0.0),\n vec3<f32>(0.0)\n );\n clipPosition = projected.clipPosition;\n }\n\n let anchorPositionNdc = anchorPositionClip.xy / anchorPositionClip.w;\n let anchorPositionScreen = vec2<f32>(\n anchorPositionNdc.x + 1.0,\n 1.0 - anchorPositionNdc.y\n ) * 0.5 * project.viewportSize / project.devicePixelRatio;\n let clipped = fast_text_clip_glyph_vertex(\n pixelOffset,\n anchorPositionScreen,\n attributes.instanceClipRects,\n clipPosition\n );\n\n var varyings: FastTextVaryings;\n varyings.position = clipped.position;\n varyings.color = attributes.instanceColors;\n varyings.textureCoords =\n (glyphFrame.xy + attributes.positions * glyphSize) / fastText.fontAtlasSize;\n varyings.uv = attributes.positions;\n return varyings;\n}\n\n@fragment\nfn fragmentMain(varyings: FastTextVaryings) -> @location(0) vec4<f32> {\n geometry.uv = varyings.uv;\n\n var alpha = textureSample(\n fontAtlasTexture,\n fontAtlasTextureSampler,\n varyings.textureCoords\n ).a;\n\n if (fastText.sdfEnabled > 0.5) {\n alpha = smoothstep(\n fastText.sdfBuffer - fastText.sdfGamma,\n fastText.sdfBuffer + fastText.sdfGamma,\n alpha\n );\n }\n\n let outputAlpha = alpha * varyings.color.a;\n if (outputAlpha < fastText.alphaCutoff) {\n discard;\n }\n\n return deckgl_premultiplied_alpha(\n vec4<f32>(varyings.color.rgb, outputAlpha * layer.opacity)\n );\n}\n";
|
|
3
|
+
export default _default;
|
|
4
|
+
//# sourceMappingURL=fast-text-layer.wgsl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fast-text-layer.wgsl.d.ts","sourceRoot":"","sources":["../../../src/layers/fast-text-layer/fast-text-layer.wgsl.ts"],"names":[],"mappings":"AAIA,wFAAwF;;AACxF,wBAiPE"}
|