From c7e9932c461cbe291eb52ab2af3fcdea0bddd360 Mon Sep 17 00:00:00 2001 From: Philipp Oeser Date: Wed, 10 May 2023 15:16:18 +0200 Subject: [PATCH] Fix #107677: Hair particle edit wrong on object with mirror modifier Caused by 2fb31f34af. Since above commit, we are now calling `BKE_mesh_orco_verts_transform` not only from `psys_face_mat` and `psys_mat_hair_to_orco`, but now also from `psys_particle_on_dm` > `psys_interpolate_face`, so we get double transforms with mirror. Remove the "extra" call in `psys_mat_hair_to_orco`. Should be backported to 3.3 LTS as well. Pull Request: https://projects.blender.org/blender/blender/pulls/107804 --- source/blender/blenkernel/intern/particle.cc | 4 ---- 1 file changed, 4 deletions(-) diff --git a/source/blender/blenkernel/intern/particle.cc b/source/blender/blenkernel/intern/particle.cc index 891a8ea8d7c..d4e7780433f 100644 --- a/source/blender/blenkernel/intern/particle.cc +++ b/source/blender/blenkernel/intern/particle.cc @@ -3957,10 +3957,6 @@ void psys_mat_hair_to_orco( psys_particle_on_dm( mesh, from, pa->num, pa->num_dmcache, pa->fuv, pa->foffset, vec, 0, 0, 0, orco); - /* see psys_face_mat for why this function is called */ - if (CustomData_get_layer(&mesh->vdata, CD_ORIGINDEX)) { - BKE_mesh_orco_verts_transform(static_cast(ob->data), &orco, 1, 1); - } copy_v3_v3(hairmat[3], orco); }