Skip to content

Commit 5c66097

Browse files
Don McCurdydonmccurdy
authored andcommitted
Update BitmapLayer, IconLayer, PointCloudLayer, TripsLayer to GLSL 300
1 parent d5412c5 commit 5c66097

File tree

8 files changed

+71
-56
lines changed

8 files changed

+71
-56
lines changed

modules/geo-layers/src/trips-layer/trips-layer.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,9 @@ export default class TripsLayer<DataT = any, ExtraProps extends {} = {}> extends
6868
shaders.inject = {
6969
'vs:#decl': `\
7070
uniform float trailLength;
71-
attribute float instanceTimestamps;
72-
attribute float instanceNextTimestamps;
73-
varying float vTime;
71+
in float instanceTimestamps;
72+
in float instanceNextTimestamps;
73+
out float vTime;
7474
`,
7575
// Timestamp of the vertex
7676
'vs:#main-end': `\
@@ -80,7 +80,7 @@ vTime = instanceTimestamps + (instanceNextTimestamps - instanceTimestamps) * vPa
8080
uniform bool fadeTrail;
8181
uniform float trailLength;
8282
uniform float currentTime;
83-
varying float vTime;
83+
in float vTime;
8484
`,
8585
// Drop the segments outside of the time window
8686
'fs:#main-start': `\

modules/layers/src/bitmap-layer/bitmap-layer-fragment.ts

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ vec3 packUVsIntoRGB(vec2 uv) {
2424
}
2525
`;
2626

27-
export default `
27+
export default `\
28+
#version 300 es
2829
#define SHADER_NAME bitmap-layer-fragment-shader
2930
3031
#ifdef GL_ES
@@ -33,8 +34,10 @@ precision highp float;
3334
3435
uniform sampler2D bitmapTexture;
3536
36-
varying vec2 vTexCoord;
37-
varying vec2 vTexPos;
37+
in vec2 vTexCoord;
38+
in vec2 vTexPos;
39+
40+
out vec4 fragColor;
3841
3942
uniform float desaturate;
4043
uniform vec4 transparentColor;
@@ -109,16 +112,16 @@ void main(void) {
109112
vec2 commonPos = lnglat_to_mercator(vTexPos);
110113
uv = getUV(commonPos);
111114
}
112-
vec4 bitmapColor = texture2D(bitmapTexture, uv);
115+
vec4 bitmapColor = texture(bitmapTexture, uv);
113116
114-
gl_FragColor = apply_opacity(color_tint(color_desaturate(bitmapColor.rgb)), bitmapColor.a * opacity);
117+
fragColor = apply_opacity(color_tint(color_desaturate(bitmapColor.rgb)), bitmapColor.a * opacity);
115118
116119
geometry.uv = uv;
117-
DECKGL_FILTER_COLOR(gl_FragColor, geometry);
120+
DECKGL_FILTER_COLOR(fragColor, geometry);
118121
119122
if (picking_uActive && !picking_uAttribute) {
120123
// Since instance information is not used, we can use picking color for pixel index
121-
gl_FragColor.rgb = packUVsIntoRGB(uv);
124+
fragColor.rgb = packUVsIntoRGB(uv);
122125
}
123126
}
124127
`;

modules/layers/src/bitmap-layer/bitmap-layer-vertex.ts

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
1-
export default `
1+
export default `\
2+
#version 300 es
23
#define SHADER_NAME bitmap-layer-vertex-shader
34
4-
attribute vec2 texCoords;
5-
attribute vec3 positions;
6-
attribute vec3 positions64Low;
5+
in vec2 texCoords;
6+
in vec3 positions;
7+
in vec3 positions64Low;
78
8-
varying vec2 vTexCoord;
9-
varying vec2 vTexPos;
9+
out vec2 vTexCoord;
10+
out vec2 vTexPos;
1011
1112
uniform float coordinateConversion;
1213

modules/layers/src/icon-layer/icon-layer-fragment.glsl.ts

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
// THE SOFTWARE.
2020

2121
export default `\
22+
#version 300 es
2223
#define SHADER_NAME icon-layer-fragment-shader
2324
2425
precision highp float;
@@ -27,15 +28,17 @@ uniform float opacity;
2728
uniform sampler2D iconsTexture;
2829
uniform float alphaCutoff;
2930
30-
varying float vColorMode;
31-
varying vec4 vColor;
32-
varying vec2 vTextureCoords;
33-
varying vec2 uv;
31+
in float vColorMode;
32+
in vec4 vColor;
33+
in vec2 vTextureCoords;
34+
in vec2 uv;
35+
36+
out vec4 fragColor;
3437
3538
void main(void) {
3639
geometry.uv = uv;
3740
38-
vec4 texColor = texture2D(iconsTexture, vTextureCoords);
41+
vec4 texColor = texture(iconsTexture, vTextureCoords);
3942
4043
// if colorMode == 0, use pixel color from the texture
4144
// if colorMode == 1 or rendering picking buffer, use texture as transparency mask
@@ -47,7 +50,7 @@ void main(void) {
4750
discard;
4851
}
4952
50-
gl_FragColor = vec4(color, a);
51-
DECKGL_FILTER_COLOR(gl_FragColor, geometry);
53+
fragColor = vec4(color, a);
54+
DECKGL_FILTER_COLOR(fragColor, geometry);
5255
}
5356
`;

modules/layers/src/icon-layer/icon-layer-vertex.glsl.ts

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -19,20 +19,21 @@
1919
// THE SOFTWARE.
2020

2121
export default `\
22+
#version 300 es
2223
#define SHADER_NAME icon-layer-vertex-shader
2324
24-
attribute vec2 positions;
25+
in vec2 positions;
2526
26-
attribute vec3 instancePositions;
27-
attribute vec3 instancePositions64Low;
28-
attribute float instanceSizes;
29-
attribute float instanceAngles;
30-
attribute vec4 instanceColors;
31-
attribute vec3 instancePickingColors;
32-
attribute vec4 instanceIconFrames;
33-
attribute float instanceColorModes;
34-
attribute vec2 instanceOffsets;
35-
attribute vec2 instancePixelOffset;
27+
in vec3 instancePositions;
28+
in vec3 instancePositions64Low;
29+
in float instanceSizes;
30+
in float instanceAngles;
31+
in vec4 instanceColors;
32+
in vec3 instancePickingColors;
33+
in vec4 instanceIconFrames;
34+
in float instanceColorModes;
35+
in vec2 instanceOffsets;
36+
in vec2 instancePixelOffset;
3637
3738
uniform float sizeScale;
3839
uniform vec2 iconsTextureDim;
@@ -41,10 +42,10 @@ uniform float sizeMaxPixels;
4142
uniform bool billboard;
4243
uniform int sizeUnits;
4344
44-
varying float vColorMode;
45-
varying vec4 vColor;
46-
varying vec2 vTextureCoords;
47-
varying vec2 uv;
45+
out float vColorMode;
46+
out vec4 vColor;
47+
out vec2 vTextureCoords;
48+
out vec2 uv;
4849
4950
vec2 rotate_by_angle(vec2 vertex, float angle) {
5051
float angle_radian = angle * PI / 180.0;

modules/layers/src/point-cloud-layer/point-cloud-layer-fragment.glsl.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,15 @@
1919
// THE SOFTWARE.
2020

2121
export default `\
22+
#version 300 es
2223
#define SHADER_NAME point-cloud-layer-fragment-shader
2324
2425
precision highp float;
2526
26-
varying vec4 vColor;
27-
varying vec2 unitPosition;
27+
in vec4 vColor;
28+
in vec2 unitPosition;
29+
30+
out vec4 fragColor;
2831
2932
void main(void) {
3033
geometry.uv = unitPosition;
@@ -35,7 +38,7 @@ void main(void) {
3538
discard;
3639
}
3740
38-
gl_FragColor = vColor;
39-
DECKGL_FILTER_COLOR(gl_FragColor, geometry);
41+
fragColor = vColor;
42+
DECKGL_FILTER_COLOR(fragColor, geometry);
4043
}
4144
`;

modules/layers/src/point-cloud-layer/point-cloud-layer-vertex.glsl.ts

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,21 +19,22 @@
1919
// THE SOFTWARE.
2020

2121
export default `\
22+
#version 300 es
2223
#define SHADER_NAME point-cloud-layer-vertex-shader
2324
24-
attribute vec3 positions;
25-
attribute vec3 instanceNormals;
26-
attribute vec4 instanceColors;
27-
attribute vec3 instancePositions;
28-
attribute vec3 instancePositions64Low;
29-
attribute vec3 instancePickingColors;
25+
in vec3 positions;
26+
in vec3 instanceNormals;
27+
in vec4 instanceColors;
28+
in vec3 instancePositions;
29+
in vec3 instancePositions64Low;
30+
in vec3 instancePickingColors;
3031
3132
uniform float opacity;
3233
uniform float radiusPixels;
3334
uniform int sizeUnits;
3435
35-
varying vec4 vColor;
36-
varying vec2 unitPosition;
36+
out vec4 vColor;
37+
out vec2 unitPosition;
3738
3839
void main(void) {
3940
geometry.worldPosition = instancePositions;

modules/layers/src/text-layer/multi-icon-layer/multi-icon-layer-fragment.glsl.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
// THE SOFTWARE.
2020

2121
export default `\
22+
#version 300 es
2223
#define SHADER_NAME multi-icon-layer-fragment-shader
2324
2425
precision highp float;
@@ -32,9 +33,11 @@ uniform float sdfBuffer;
3233
uniform float outlineBuffer;
3334
uniform vec4 outlineColor;
3435
35-
varying vec4 vColor;
36-
varying vec2 vTextureCoords;
37-
varying vec2 uv;
36+
in vec4 vColor;
37+
in vec2 vTextureCoords;
38+
in vec2 uv;
39+
40+
out vec4 fragColor;
3841
3942
void main(void) {
4043
geometry.uv = uv;
@@ -63,9 +66,9 @@ void main(void) {
6366
discard;
6467
}
6568
66-
gl_FragColor = vec4(color.rgb, a * opacity);
69+
fragColor = vec4(color.rgb, a * opacity);
6770
}
6871
69-
DECKGL_FILTER_COLOR(gl_FragColor, geometry);
72+
DECKGL_FILTER_COLOR(fragColor, geometry);
7073
}
7174
`;

0 commit comments

Comments
 (0)