diff --git a/source/blender/editors/space_view3d/view3d_snap.cc b/source/blender/editors/space_view3d/view3d_snap.cc index dcb9f3775f0..5886bd85164 100644 --- a/source/blender/editors/space_view3d/view3d_snap.cc +++ b/source/blender/editors/space_view3d/view3d_snap.cc @@ -570,8 +570,12 @@ static bool snap_selected_to_location_rotation(bContext *C, } for (Object *ob : objects) { - if (ob->parent && BKE_object_flag_test_recursive(ob->parent, OB_DONE)) { - continue; + /* With offset enabled, skip child objects whose parents are also transformed + * to avoid double transform. */ + if (use_offset) { + if (ob->parent && BKE_object_flag_test_recursive(ob->parent, OB_DONE)) { + continue; + } } blender::float3 target_loc_local; /* parent-relative */