diff --git a/editor/scene/2d/polygon_2d_editor_plugin.cpp b/editor/scene/2d/polygon_2d_editor_plugin.cpp index d8d22ad6fa5..e49980d6225 100644 --- a/editor/scene/2d/polygon_2d_editor_plugin.cpp +++ b/editor/scene/2d/polygon_2d_editor_plugin.cpp @@ -794,7 +794,7 @@ void Polygon2DEditor::_canvas_input(const Ref &p_input) { } break; case ACTION_EDIT_POINT: { Vector uv_new = editing_points; - uv_new.set(point_drag_index, uv_new[point_drag_index] + drag); + uv_new.set(point_drag_index, mtx.affine_inverse().xform(snap_point(mm->get_position()))); if (current_mode == MODE_UV) { node->set_uv(uv_new);