Skip to content

Commit 72a570e

Browse files
astojiljgithub-actions[bot]
authored andcommitted
[DRIVE3D-3311] Lift route cutout 0.5 m on ground and elevated
GitOrigin-RevId: 17b5aa892e71889c5503d65bb6f41be488d1e158
1 parent 64bb0d0 commit 72a570e

13 files changed

Lines changed: 43 additions & 11 deletions

3d-style/shaders/building.fragment.glsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,7 @@ void main() {
263263
#endif
264264

265265
#ifdef FEATURE_CUTOUT
266-
color = apply_feature_cutout(color, gl_FragCoord, get_cutout_factors(gl_FragCoord).x);
266+
color = apply_feature_cutout(color, gl_FragCoord, get_cutout_factors(gl_FragCoord).x, 0.0);
267267
#endif
268268

269269
glFragColor = color;

3d-style/shaders/elevated_structures_depth_reconstruct.fragment.glsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ void main() {
1010
discard;
1111
#else
1212
#ifdef FEATURE_CUTOUT
13-
apply_feature_cutout(vec4(0.0, 0.0, 0.0, 1.0), gl_FragCoord, get_cutout_factors(gl_FragCoord).x);
13+
apply_feature_cutout(vec4(0.0, 0.0, 0.0, 1.0), gl_FragCoord, get_cutout_factors(gl_FragCoord).x, 0.0);
1414
#endif
1515
#endif
1616
glFragColor = vec4(1.0, 0.0, 0.0, 1.0);

3d-style/shaders/elevated_structures_model.fragment.glsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ void main() {
7878
#endif
7979

8080
#ifdef FEATURE_CUTOUT
81-
out_color = apply_feature_cutout(out_color, gl_FragCoord, cutout_factors.x);
81+
out_color = apply_feature_cutout(out_color, gl_FragCoord, cutout_factors.x, v_height);
8282
#endif
8383

8484
// Premultiplied alpha output for (One, OneMinusSrcAlpha) translucent blend.

3d-style/shaders/model.fragment.glsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -596,7 +596,7 @@ vec4 finalColor;
596596
apply_feature_cutout_dither(gl_FragCoord, v_cutout_factor);
597597
#else
598598
#ifdef FEATURE_CUTOUT
599-
finalColor = apply_feature_cutout(finalColor, gl_FragCoord, get_cutout_factors(gl_FragCoord).x);
599+
finalColor = apply_feature_cutout(finalColor, gl_FragCoord, get_cutout_factors(gl_FragCoord).x, 0.0);
600600
#endif
601601
#endif
602602

src/shaders/fill.fragment.glsl

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,11 @@ void main() {
6060
#endif
6161

6262
#ifdef FEATURE_CUTOUT
63-
out_color = apply_feature_cutout(out_color, gl_FragCoord, cutout_factors.x);
63+
float z = 0.0;
64+
#ifdef ELEVATED_ROADS
65+
z = v_road_z_offset;
66+
#endif
67+
out_color = apply_feature_cutout(out_color, gl_FragCoord, cutout_factors.x, z);
6468
#endif
6569

6670
glFragColor = out_color;

src/shaders/fill_extrusion.fragment.glsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ float flood_radiance = 0.0;
168168
#endif
169169

170170
#ifdef FEATURE_CUTOUT
171-
color = apply_feature_cutout(color, gl_FragCoord, get_cutout_factors(gl_FragCoord).x);
171+
color = apply_feature_cutout(color, gl_FragCoord, get_cutout_factors(gl_FragCoord).x, 0.0);
172172
#endif
173173

174174
glFragColor = color;

src/shaders/fill_outline.fragment.glsl

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ in highp vec2 v_pos;
88
uniform float u_emissive_strength;
99
uniform lowp float u_opacity_multiplier;
1010

11+
#ifdef ELEVATED_ROADS
12+
in highp float v_road_z_offset;
13+
#endif
14+
1115
#ifdef RENDER_SHADOWS
1216
uniform vec3 u_ground_shadow_factor;
1317

@@ -46,7 +50,11 @@ void main() {
4650
#endif
4751

4852
#ifdef FEATURE_CUTOUT
49-
out_color = apply_feature_cutout(out_color, gl_FragCoord, cutout_factors.x);
53+
float z = 0.0;
54+
#ifdef ELEVATED_ROADS
55+
z = v_road_z_offset;
56+
#endif
57+
out_color = apply_feature_cutout(out_color, gl_FragCoord, cutout_factors.x, z);
5058
#endif
5159

5260
glFragColor = out_color * (alpha * opacity * u_opacity_multiplier);

src/shaders/fill_outline.vertex.glsl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
in ivec2 a_pos;
55
#ifdef ELEVATED_ROADS
66
in float a_road_z_offset;
7+
out highp float v_road_z_offset;
78
#endif
89

910
#ifdef RENDER_SHADOWS
@@ -32,6 +33,7 @@ void main() {
3233

3334
#ifdef ELEVATED_ROADS
3435
z_offset += a_road_z_offset;
36+
v_road_z_offset = z_offset;
3537
#endif
3638
float hidden = float(opacity == 0.0);
3739
gl_Position = mix(u_matrix * vec4(a_pos, z_offset, 1), AWAY, hidden);

src/shaders/fill_outline_pattern.fragment.glsl

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@ in highp vec4 v_pos_light_view_1;
2525
in highp float v_depth;
2626
#endif
2727

28+
#ifdef ELEVATED_ROADS
29+
in highp float v_road_z_offset;
30+
#endif
31+
2832
in highp vec2 v_pos;
2933
in highp vec2 v_pos_world;
3034

@@ -82,7 +86,11 @@ void main() {
8286
#endif // LIGHTING_3D_MODE
8387

8488
#ifdef FEATURE_CUTOUT
85-
out_color = apply_feature_cutout(out_color, gl_FragCoord, cutout_factors.x);
89+
float z = 0.0;
90+
#ifdef ELEVATED_ROADS
91+
z = v_road_z_offset;
92+
#endif
93+
out_color = apply_feature_cutout(out_color, gl_FragCoord, cutout_factors.x, z);
8694
#endif
8795

8896
#ifdef FOG

src/shaders/fill_outline_pattern.vertex.glsl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ uniform float u_tile_units_to_pixels;
1111
in ivec2 a_pos;
1212
#ifdef ELEVATED_ROADS
1313
in float a_road_z_offset;
14+
out highp float v_road_z_offset;
1415
#endif
1516

1617
#ifdef RENDER_SHADOWS
@@ -47,6 +48,7 @@ void main() {
4748

4849
#ifdef ELEVATED_ROADS
4950
z_offset += a_road_z_offset;
51+
v_road_z_offset = z_offset;
5052
#endif
5153
float hidden = float(opacity == 0.0);
5254
vec2 pos = vec2(a_pos);

0 commit comments

Comments
 (0)