[Bf-blender-cvs] [7d438ab6d88] refactor-mesh-position-generic: Merge branch 'refactor-mesh-selection-generic' into refactor-mesh-position-generic
Hans Goudey
noreply at git.blender.org
Thu Sep 15 18:44:13 CEST 2022
Commit: 7d438ab6d88ae8f1ff08bf219297ab0f5f9d2b2e
Author: Hans Goudey
Date: Wed Sep 14 18:51:38 2022 -0500
Branches: refactor-mesh-position-generic
https://developer.blender.org/rB7d438ab6d88ae8f1ff08bf219297ab0f5f9d2b2e
Merge branch 'refactor-mesh-selection-generic' into refactor-mesh-position-generic
===================================================================
===================================================================
diff --cc source/blender/blenkernel/BKE_collision.h
index eaf8392fe66,291d76df4c8..44c1b2a3cbd
--- a/source/blender/blenkernel/BKE_collision.h
+++ b/source/blender/blenkernel/BKE_collision.h
@@@ -14,8 -14,10 +14,9 @@@ struct BVHTree
struct Collection;
struct CollisionModifierData;
struct Depsgraph;
-struct MVert;
struct MVertTri;
struct Object;
+ struct Scene;
////////////////////////////////////////
// used for collisions in collision.c
diff --cc source/blender/blenkernel/intern/mesh_boolean_convert.cc
index 8ddec343387,7c89f840d7f..ae0de900d20
--- a/source/blender/blenkernel/intern/mesh_boolean_convert.cc
+++ b/source/blender/blenkernel/intern/mesh_boolean_convert.cc
@@@ -714,16 -717,17 +714,16 @@@ static Mesh *imesh_to_mesh(IMesh *im, M
merge_vertex_loop_poly_customdata_layers(result, mim);
/* Set the vertex coordinate values and other data. */
- MutableSpan<MVert> verts = result->verts_for_write();
+ MutableSpan<float3> positions = result->positions_for_write();
for (int vi : im->vert_index_range()) {
const Vert *v = im->vert(vi);
- copy_v3fl_v3db(positions[vi], v->co);
if (v->orig != NO_INDEX) {
const Mesh *orig_me;
int index_in_orig_me;
mim.input_mvert_for_orig_index(v->orig, &orig_me, &index_in_orig_me);
copy_vert_attributes(result, orig_me, vi, index_in_orig_me);
}
- MVert *mv = &verts[vi];
- copy_v3fl_v3db(mv->co, v->co);
++ copy_v3fl_v3db(positions[vi], v->co);
}
/* Set the loopstart and totloop for each output poly,
diff --cc source/blender/blenkernel/intern/paint.cc
index 5ee8ddc2483,ea1bd3c1cc3..59eac492db4
--- a/source/blender/blenkernel/intern/paint.cc
+++ b/source/blender/blenkernel/intern/paint.cc
@@@ -2240,15 -2145,9 +2146,13 @@@ static PBVH *build_pbvh_from_regular_me
MLoopTri *looptri = static_cast<MLoopTri *>(
MEM_malloc_arrayN(looptris_num, sizeof(*looptri), __func__));
- BKE_mesh_recalc_looptri(
- loops.data(), polys.data(), verts.data(), me->totloop, me->totpoly, looptri);
+ BKE_mesh_recalc_looptri(loops.data(),
+ polys.data(),
+ reinterpret_cast<const float(*)[3]>(positions.data()),
+ me->totloop,
+ me->totpoly,
+ looptri);
- BKE_sculpt_sync_face_set_visibility(me, nullptr);
-
BKE_pbvh_build_mesh(pbvh,
me,
polys.data(),
diff --cc source/blender/blenloader/intern/versioning_400.cc
index 00000000000,ba8b430aa1d..4d1c8d5f3f5
mode 000000,100644..100644
--- a/source/blender/blenloader/intern/versioning_400.cc
+++ b/source/blender/blenloader/intern/versioning_400.cc
@@@ -1,0 -1,53 +1,54 @@@
+ /* SPDX-License-Identifier: GPL-2.0-or-later */
+
+ /** \file
+ * \ingroup blenloader
+ */
+
+ #define DNA_DEPRECATED_ALLOW
+
+ #include "CLG_log.h"
+
+ #include "BKE_main.h"
+ #include "BKE_mesh_legacy_convert.h"
+
+ #include "BLO_readfile.h"
+
+ #include "readfile.h"
+
+ #include "versioning_common.h"
+
+ // static CLG_LogRef LOG = {"blo.readfile.doversion"};
+
+ static void version_mesh_legacy_to_struct_of_array_format(Mesh &mesh)
+ {
+ BKE_mesh_legacy_convert_flags_to_selection_layers(&mesh);
+ BKE_mesh_legacy_convert_flags_to_hide_layers(&mesh);
+ BKE_mesh_legacy_convert_mpoly_to_material_indices(&mesh);
+ BKE_mesh_legacy_bevel_weight_to_layers(&mesh);
++ BKE_mesh_legacy_convert_verts_to_positions(&mesh);
+ }
+
+ void blo_do_versions_400(FileData * /*fd*/, Library * /*lib*/, Main *bmain)
+ {
+ // if (!MAIN_VERSION_ATLEAST(bmain, 400, 0)) {
+ /* This is done here because we will continue to write with the old format until 4.0, so we need
+ * to convert even "current" files. Keep the check commented out for now so the versioning isn't
+ * turned off right after the 4.0 bump. */
+ LISTBASE_FOREACH (Mesh *, mesh, &bmain->meshes) {
+ version_mesh_legacy_to_struct_of_array_format(*mesh);
+ }
+ // }
+
+ /**
+ * Versioning code until next subversion bump goes here.
+ *
+ * \note Be sure to check when bumping the version:
+ * - "versioning_userdef.c", #blo_do_versions_userdef
+ * - "versioning_userdef.c", #do_versions_theme
+ *
+ * \note Keep this message at the bottom of the function.
+ */
+ {
+ /* Keep this block, even when empty. */
+ }
+ }
More information about the Bf-blender-cvs
mailing list