[Bf-blender-cvs] [a7e1815c03c] refactor-mesh-position-generic: Merge branch 'master' into refactor-mesh-position-generic
Hans Goudey
noreply at git.blender.org
Fri Dec 30 14:41:42 CET 2022
Commit: a7e1815c03ce98eafca166862df86e01199d5ab5
Author: Hans Goudey
Date: Fri Dec 30 08:31:19 2022 -0500
Branches: refactor-mesh-position-generic
https://developer.blender.org/rBa7e1815c03ce98eafca166862df86e01199d5ab5
Merge branch 'master' into refactor-mesh-position-generic
===================================================================
===================================================================
diff --cc source/blender/blenkernel/intern/cloth.cc
index 2d8caf6b740,23bbaaf58b2..c1b6ccd853b
--- a/source/blender/blenkernel/intern/cloth.cc
+++ b/source/blender/blenkernel/intern/cloth.cc
@@@ -713,9 -713,8 +713,9 @@@ static float cloth_shrink_factor(ClothM
}
static bool cloth_from_object(
- Object *ob, ClothModifierData *clmd, Mesh *mesh, float UNUSED(framenr), int first)
+ Object *ob, ClothModifierData *clmd, Mesh *mesh, float /*framenr*/, int first)
{
+ using namespace blender;
int i = 0;
ClothVertex *verts = nullptr;
const float(*shapekey_rest)[3] = nullptr;
@@@ -1168,14 -1166,13 +1168,14 @@@ static void cloth_update_verts(Object *
/* Write rest vert locations to a copy of the mesh. */
static Mesh *cloth_make_rest_mesh(ClothModifierData *clmd, Mesh *mesh)
{
+ using namespace blender;
Mesh *new_mesh = BKE_mesh_copy_for_eval(mesh, false);
ClothVertex *verts = clmd->clothObject->verts;
- MVert *mvert = BKE_mesh_verts_for_write(new_mesh);
+ MutableSpan<float3> positions = mesh->vert_positions_for_write();
/* vertex count is already ensured to match */
- for (int i = 0; i < mesh->totvert; i++, verts++) {
- copy_v3_v3(positions[i], verts->xrest);
- for (uint i = 0; i < mesh->totvert; i++, verts++) {
- copy_v3_v3(mvert[i].co, verts->xrest);
++ for (const int i : positions.index_range()) {
++ positions[i] = verts[i].xrest;
}
BKE_mesh_tag_coords_changed(new_mesh);
diff --cc source/blender/gpu/intern/gpu_shader_builder_stubs.cc
index 550216102bb,ebb06ee55b9..30bd6267b17
--- a/source/blender/gpu/intern/gpu_shader_builder_stubs.cc
+++ b/source/blender/gpu/intern/gpu_shader_builder_stubs.cc
@@@ -151,10 -148,9 +148,10 @@@ bool paint_is_grid_face_hidden(const ui
* \{ */
void BKE_mesh_calc_poly_normal(const struct MPoly * /*mpoly*/,
const struct MLoop * /*loopstart*/,
- const struct MVert * /*mvarray*/,
+ const float (*positions)[3],
- float UNUSED(r_no[3]))
+ float[3] /*col*/)
{
+ UNUSED_VARS(positions);
BLI_assert_unreachable();
}
diff --cc source/blender/makesdna/DNA_customdata_types.h
index a9002fb2f11,3bff2f4316c..4984869f826
--- a/source/blender/makesdna/DNA_customdata_types.h
+++ b/source/blender/makesdna/DNA_customdata_types.h
@@@ -88,11 -88,11 +88,11 @@@ typedef enum eCustomDataType
*/
CD_AUTO_FROM_NAME = -1,
- CD_MVERT = 0,
#ifdef DNA_DEPRECATED_ALLOW
+ CD_MVERT = 0, /* DEPRECATED */
CD_MSTICKY = 1, /* DEPRECATED */
#endif
- CD_MDEFORMVERT = 2,
+ CD_MDEFORMVERT = 2, /* Array of `MDeformVert`. */
CD_MEDGE = 3,
CD_MFACE = 4,
CD_MTFACE = 5,
diff --cc source/blender/modifiers/intern/MOD_displace.cc
index f260766ddfc,db90242fd55..402752610eb
--- a/source/blender/modifiers/intern/MOD_displace.cc
+++ b/source/blender/modifiers/intern/MOD_displace.cc
@@@ -157,9 -155,10 +155,9 @@@ struct DisplaceUserdata
float (*tex_co)[3];
float (*vertexCos)[3];
float local_mat[4][4];
- MVert *mvert;
const float (*vert_normals)[3];
float (*vert_clnors)[3];
- } DisplaceUserdata;
+ };
static void displaceModifier_do_task(void *__restrict userdata,
const int iter,
diff --cc source/blender/render/intern/bake.cc
index 481e1f8d302,e88dbcc3778..8b598ceb6a0
--- a/source/blender/render/intern/bake.cc
+++ b/source/blender/render/intern/bake.cc
@@@ -86,13 -86,13 +86,13 @@@ struct BakeDataZSpan
/**
* struct wrapping up tangent space data
*/
- typedef struct TSpace {
+ struct TSpace {
float tangent[3];
float sign;
- } TSpace;
+ };
- typedef struct TriTessFace {
+ struct TriTessFace {
- const MVert *mverts[3];
+ const float *positions[3];
const float *vert_normals[3];
const TSpace *tspace[3];
const float *loop_normal[3];
diff --cc source/blender/render/intern/multires_bake.cc
index 89e7ac0185e,155096d890c..09f8fcacc7a
--- a/source/blender/render/intern/multires_bake.cc
+++ b/source/blender/render/intern/multires_bake.cc
@@@ -40,27 -40,27 +40,27 @@@
#include "IMB_imbuf.h"
#include "IMB_imbuf_types.h"
- typedef void (*MPassKnownData)(DerivedMesh *lores_dm,
- DerivedMesh *hires_dm,
- void *thread_data,
- void *bake_data,
- ImBuf *ibuf,
- const int face_index,
- const int lvl,
- const float st[2],
- float tangmat[3][3],
- const int x,
- const int y);
-
- typedef void *(*MInitBakeData)(MultiresBakeRender *bkr, ImBuf *ibuf);
- typedef void (*MFreeBakeData)(void *bake_data);
-
- typedef struct MultiresBakeResult {
+ using MPassKnownData = void (*)(DerivedMesh *lores_dm,
+ DerivedMesh *hires_dm,
+ void *thread_data,
+ void *bake_data,
+ ImBuf *ibuf,
+ const int face_index,
+ const int lvl,
+ const float st[2],
+ float tangmat[3][3],
+ const int x,
+ const int y);
+
+ using MInitBakeData = void *(*)(MultiresBakeRender *bkr, ImBuf *ibuf);
+ using MFreeBakeData = void (*)(void *bake_data);
+
+ struct MultiresBakeResult {
float height_min, height_max;
- } MultiresBakeResult;
+ };
- typedef struct {
+ struct MResolvePixelData {
- MVert *mvert;
+ const float (*positions)[3];
const float (*vert_normals)[3];
MPoly *mpoly;
const int *material_indices;
@@@ -485,8 -485,9 +485,9 @@@ static void do_multires_bake(MultiresBa
Mesh *temp_mesh = BKE_mesh_new_nomain(
dm->getNumVerts(dm), dm->getNumEdges(dm), 0, dm->getNumLoops(dm), dm->getNumPolys(dm));
- memcpy(
- temp_mesh->vert_positions_for_write().data(), positions, temp_mesh->totvert * sizeof(float[3]));
- memcpy(BKE_mesh_verts_for_write(temp_mesh),
- dm->getVertArray(dm),
- temp_mesh->totvert * sizeof(MVert));
++ memcpy(temp_mesh->vert_positions_for_write().data(),
++ positions,
++ temp_mesh->totvert * sizeof(float[3]));
memcpy(BKE_mesh_edges_for_write(temp_mesh),
dm->getEdgeArray(dm),
temp_mesh->totedge * sizeof(MEdge));
More information about the Bf-blender-cvs
mailing list