public void UpdateMesh()
            {
                if (vertex_update_queue.Count == 0)
                {
                    return;
                }

                int local_vert_i;

                while (vertex_update_queue.Count > 0)
                {
                    Vector2Int v_coord = vertex_update_queue.Dequeue();

                    local_vert_i = v_coord.x - vert_left + (v_coord.y - vert_bottom) * vert_width;
                    VisualVertex v = pipeline.GetVertex(v_coord.x, v_coord.y);

                    vertices[local_vert_i].y = GetHeight(v);
                    colors[local_vert_i]     = v.Color;
                }

                PassMeshProperties();
            }
 static float GetHeight(VisualVertex vert)
 {
     return(vert.Height);
 }