From 2db54c43d8fac46eb3e78e1d81b4a89bc25d9f8d Mon Sep 17 00:00:00 2001 From: tariqsulley Date: Sun, 12 Oct 2025 10:34:11 +0000 Subject: [PATCH] Fix #147246: Translate with absolute increment snap fails Snap translation to the world grid when absolute grid increments is enabled. Previously, absolute increment snap shifted in perspective view, causing objects to misaligned with the world grid. Resolves regression introduced since 3.6. Ref !147246 --- source/blender/editors/transform/transform_snap.cc | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/source/blender/editors/transform/transform_snap.cc b/source/blender/editors/transform/transform_snap.cc index 2d7e343ba12..b8d7e113725 100644 --- a/source/blender/editors/transform/transform_snap.cc +++ b/source/blender/editors/transform/transform_snap.cc @@ -729,8 +729,15 @@ static eSnapMode snap_mode_from_spacetype(TransInfo *t) if (t->options & (CTX_CAMERA | CTX_EDGE_DATA | CTX_PAINT_CURVE)) { return SCE_SNAP_TO_INCREMENT; } - - return eSnapMode(ts->snap_mode); + eSnapMode snap_mode = eSnapMode(ts->snap_mode); + if (t->mode == TFM_TRANSLATION) { + /* Use grid-snap for absolute snap while translating, see: #147246. */ + if ((snap_mode & SCE_SNAP_TO_INCREMENT) && (ts->snap_flag & SCE_SNAP_ABS_GRID)) { + snap_mode &= ~SCE_SNAP_TO_INCREMENT; + snap_mode |= SCE_SNAP_TO_GRID; + } + } + return snap_mode; } if (ELEM(t->spacetype, SPACE_ACTION, SPACE_NLA)) {