Browse Source

Remove implicit casts and comparisons of int to float

We can't change this index to an integer, because varying variables can't be integer, even though this variable will only really be tested on vertex level. Not sure if varying was the right choice, but I don't want to change that.
This prevents a crash, probably only occurring on certain GPUs.

Contributes to issue CURA-8657.
Ghostkeeper 3 years ago
parent
commit
dc28370178

+ 2 - 2
plugins/SimulationView/layers.shader

@@ -54,7 +54,7 @@ fragment =
 
 
     void main()
     void main()
     {
     {
-        if (u_drawRange.x >= 0 && u_drawRange.y >= 0 && (v_vertex_index < u_drawRange.x || v_vertex_index > u_drawRange.y))
+        if (u_drawRange.x >= 0.0 && u_drawRange.y >= 0.0 && (v_vertex_index < u_drawRange.x || v_vertex_index > u_drawRange.y))
         {
         {
             discard;
             discard;
         }
         }
@@ -98,7 +98,7 @@ u_show_helpers = 1
 u_show_skin = 1
 u_show_skin = 1
 u_show_infill = 1
 u_show_infill = 1
 
 
-u_drawRange = [-1, -1]
+u_drawRange = [-1.0, -1.0]
 
 
 [bindings]
 [bindings]
 u_modelMatrix = model_matrix
 u_modelMatrix = model_matrix

+ 2 - 2
plugins/SimulationView/layers3d.shader

@@ -237,7 +237,7 @@ geometry41core =
         float size_x;
         float size_x;
         float size_y;
         float size_y;
 
 
-        if (u_drawRange[0] >= 0 && u_drawRange[1] >= 0 && (v_index[0] < u_drawRange[0] || v_index[0] >= u_drawRange[1]))
+        if (u_drawRange[0] >= 0.0 && u_drawRange[1] >= 0.0 && (v_index[0] < u_drawRange[0] || v_index[0] >= u_drawRange[1]))
         {
         {
              return;
              return;
         }
         }
@@ -437,7 +437,7 @@ u_max_feedrate = 1
 u_min_thickness = 0
 u_min_thickness = 0
 u_max_thickness = 1
 u_max_thickness = 1
 
 
-u_drawRange = [-1, -1]
+u_drawRange = [-1.0, -1.0]
 
 
 [bindings]
 [bindings]
 u_modelMatrix = model_matrix
 u_modelMatrix = model_matrix

+ 2 - 2
plugins/SimulationView/layers3d_shadow.shader

@@ -112,7 +112,7 @@ geometry41core =
         float size_x;
         float size_x;
         float size_y;
         float size_y;
 
 
-        if (u_drawRange[0] >= 0 && u_drawRange[1] >= 0 && (v_index[0] < u_drawRange[0] || v_index[0] >= u_drawRange[1]))
+        if (u_drawRange[0] >= 0.0 && u_drawRange[1] >= 0.0 && (v_index[0] < u_drawRange[0] || v_index[0] >= u_drawRange[1]))
         {
         {
             return;
             return;
         }
         }
@@ -278,7 +278,7 @@ u_show_helpers = 1
 u_show_skin = 1
 u_show_skin = 1
 u_show_infill = 1
 u_show_infill = 1
 
 
-u_drawRange = [-1, -1]
+u_drawRange = [-1.0, -1.0]
 
 
 [bindings]
 [bindings]
 u_modelMatrix = model_matrix
 u_modelMatrix = model_matrix

+ 2 - 2
plugins/SimulationView/layers_shadow.shader

@@ -54,7 +54,7 @@ fragment =
 
 
     void main()
     void main()
     {
     {
-        if (u_drawRange.x >= 0 && u_drawRange.y >= 0 && (v_vertex_index < u_drawRange.x || v_vertex_index > u_drawRange.y))
+        if (u_drawRange.x >= 0.0 && u_drawRange.y >= 0.0 && (v_vertex_index < u_drawRange.x || v_vertex_index > u_drawRange.y))
         {
         {
             discard;
             discard;
         }
         }
@@ -102,7 +102,7 @@ u_show_helpers = 1
 u_show_skin = 1
 u_show_skin = 1
 u_show_infill = 1
 u_show_infill = 1
 
 
-u_drawRange = [-1, -1]
+u_drawRange = [-1.0, -1.0]
 
 
 [bindings]
 [bindings]
 u_modelMatrix = model_matrix
 u_modelMatrix = model_matrix