[Bf-blender-cvs] [4bac85f0775] refactor-mesh-corners-generic: Merge branch 'master' into refactor-mesh-corners-generic
Hans Goudey
noreply at git.blender.org
Tue Jan 10 20:44:51 CET 2023
Commit: 4bac85f0775a5cc4e2c73fa3d8563f2573790fbb
Author: Hans Goudey
Date: Tue Jan 10 14:35:15 2023 -0500
Branches: refactor-mesh-corners-generic
https://developer.blender.org/rB4bac85f0775a5cc4e2c73fa3d8563f2573790fbb
Merge branch 'master' into refactor-mesh-corners-generic
===================================================================
===================================================================
diff --cc source/blender/blenkernel/BKE_mesh.h
index 76b86e13e4b,ffca4cff347..c3ff1a14972
--- a/source/blender/blenkernel/BKE_mesh.h
+++ b/source/blender/blenkernel/BKE_mesh.h
@@@ -34,8 -34,8 +34,7 @@@ struct MDeformVert
struct MDisps;
struct MEdge;
struct MFace;
-struct MLoop;
struct MLoopTri;
- struct MLoopUV;
struct MPoly;
struct Main;
struct MemArena;
@@@ -694,12 -689,11 +693,11 @@@ void BKE_mesh_calc_poly_center(const st
float r_cent[3]);
/* NOTE: passing poly-normal is only a speedup so we can skip calculating it. */
float BKE_mesh_calc_poly_area(const struct MPoly *mpoly,
- const struct MLoop *loopstart,
+ const int *poly_verts,
const float (*vert_positions)[3]);
float BKE_mesh_calc_area(const struct Mesh *me);
- float BKE_mesh_calc_poly_uv_area(const struct MPoly *mpoly, const struct MLoopUV *uv_array);
void BKE_mesh_calc_poly_angles(const struct MPoly *mpoly,
- const struct MLoop *loopstart,
+ const int *poly_verts,
const float (*vert_positions)[3],
float angles[]);
diff --cc source/blender/blenkernel/BKE_mesh_mapping.h
index 2e5ae6d36b8,36ac0708629..ae99915a965
--- a/source/blender/blenkernel/BKE_mesh_mapping.h
+++ b/source/blender/blenkernel/BKE_mesh_mapping.h
@@@ -15,8 -15,8 +15,7 @@@ extern "C"
#endif
struct MEdge;
-struct MLoop;
struct MLoopTri;
- struct MLoopUV;
struct MPoly;
/* UvVertMap */
@@@ -103,8 -103,8 +102,8 @@@ typedef struct MeshElemMap
UvVertMap *BKE_mesh_uv_vert_map_create(const struct MPoly *mpoly,
const bool *hide_poly,
const bool *select_poly,
- const struct MLoop *mloop,
+ const int *corner_verts,
- const struct MLoopUV *mloopuv,
+ const float (*mloopuv)[2],
unsigned int totpoly,
unsigned int totvert,
const float limit[2],
@@@ -305,10 -303,9 +304,10 @@@ bool BKE_mesh_calc_islands_loop_poly_uv
int totedge,
struct MPoly *polys,
int totpoly,
- struct MLoop *loops,
+ const int *corner_verts,
+ const int *corner_edges,
int totloop,
- const struct MLoopUV *luvs,
+ const float (*luvs)[2],
MeshIslandStore *r_island_store);
/**
diff --cc source/blender/blenkernel/BKE_mesh_tangent.h
index 49e22cd55b6,b30ce13da8d..1b767278d12
--- a/source/blender/blenkernel/BKE_mesh_tangent.h
+++ b/source/blender/blenkernel/BKE_mesh_tangent.h
@@@ -19,10 -19,10 +19,10 @@@ struct ReportList
*/
void BKE_mesh_calc_loop_tangent_single_ex(const float (*vert_positions)[3],
int numVerts,
- const struct MLoop *mloops,
+ const int *corner_verts,
float (*r_looptangent)[4],
const float (*loop_normals)[3],
- const struct MLoopUV *loopuv,
+ const float (*loopuv)[2],
int numLoops,
const struct MPoly *mpolys,
int numPolys,
diff --cc source/blender/blenkernel/intern/customdata.cc
index 748f5fd95a3,8444598d7d8..63e600c4224
--- a/source/blender/blenkernel/intern/customdata.cc
+++ b/source/blender/blenkernel/intern/customdata.cc
@@@ -2128,8 -2050,8 +2050,7 @@@ const CustomData_MeshMasks CD_MASK_MES
/* pmask */
(CD_MASK_MPOLY | CD_MASK_FACEMAP | CD_MASK_FREESTYLE_FACE | CD_MASK_PROP_ALL),
/* lmask */
- (CD_MASK_MDISPS | CD_MASK_MLOOPUV | CD_MASK_CUSTOMLOOPNORMAL | CD_MASK_GRID_PAINT_MASK |
- (CD_MASK_MLOOP | CD_MASK_MDISPS | CD_MASK_CUSTOMLOOPNORMAL | CD_MASK_GRID_PAINT_MASK |
-- CD_MASK_PROP_ALL),
++ (CD_MASK_MDISPS | CD_MASK_CUSTOMLOOPNORMAL | CD_MASK_GRID_PAINT_MASK | CD_MASK_PROP_ALL),
};
const CustomData_MeshMasks CD_MASK_DERIVEDMESH = {
/* vmask */ (CD_MASK_ORIGINDEX | CD_MASK_MDEFORMVERT | CD_MASK_SHAPEKEY | CD_MASK_MVERT_SKIN |
@@@ -2172,9 -2093,9 +2092,9 @@@ const CustomData_MeshMasks CD_MASK_EVER
(CD_MASK_MPOLY | CD_MASK_BM_ELEM_PYPTR | CD_MASK_ORIGINDEX | CD_MASK_FACEMAP |
CD_MASK_FREESTYLE_FACE | CD_MASK_PROP_ALL),
/* lmask */
- (CD_MASK_BM_ELEM_PYPTR | CD_MASK_MDISPS | CD_MASK_NORMAL | CD_MASK_MLOOPUV |
- (CD_MASK_MLOOP | CD_MASK_BM_ELEM_PYPTR | CD_MASK_MDISPS | CD_MASK_NORMAL |
-- CD_MASK_CUSTOMLOOPNORMAL | CD_MASK_MLOOPTANGENT | CD_MASK_PREVIEW_MLOOPCOL |
-- CD_MASK_ORIGSPACE_MLOOP | CD_MASK_GRID_PAINT_MASK | CD_MASK_PROP_ALL),
++ (CD_MASK_BM_ELEM_PYPTR | CD_MASK_MDISPS | CD_MASK_NORMAL | CD_MASK_CUSTOMLOOPNORMAL |
++ CD_MASK_MLOOPTANGENT | CD_MASK_PREVIEW_MLOOPCOL | CD_MASK_ORIGSPACE_MLOOP |
++ CD_MASK_GRID_PAINT_MASK | CD_MASK_PROP_ALL),
};
static const LayerTypeInfo *layerType_getInfo(int type)
diff --cc source/blender/blenkernel/intern/dynamicpaint.c
index 7857c78c295,21614b53eae..3e91a968788
--- a/source/blender/blenkernel/intern/dynamicpaint.c
+++ b/source/blender/blenkernel/intern/dynamicpaint.c
@@@ -1467,8 -1467,8 +1467,8 @@@ static void dynamicPaint_initAdjacencyD
typedef struct DynamicPaintSetInitColorData {
const DynamicPaintSurface *surface;
- const MLoop *mloop;
+ const int *corner_verts;
- const MLoopUV *mloopuv;
+ const float (*mloopuv)[2];
const MLoopTri *mlooptri;
const MLoopCol *mloopcol;
struct ImagePool *pool;
@@@ -1484,9 -1484,9 +1484,9 @@@ static void dynamic_paint_set_init_colo
const PaintSurfaceData *sData = data->surface->data;
PaintPoint *pPoint = (PaintPoint *)sData->type_data;
- const MLoop *mloop = data->mloop;
+ const int *corner_verts = data->corner_verts;
const MLoopTri *mlooptri = data->mlooptri;
- const MLoopUV *mloopuv = data->mloopuv;
+ const float(*mloopuv)[2] = data->mloopuv;
struct ImagePool *pool = data->pool;
Tex *tex = data->surface->init_texture;
@@@ -1496,11 -1496,11 +1496,11 @@@
for (int j = 3; j--;) {
TexResult texres = {0};
- const uint vert = mloop[mlooptri[i].tri[j]].v;
+ const int vert = corner_verts[mlooptri[i].tri[j]];
/* remap to [-1.0, 1.0] */
- uv[0] = mloopuv[mlooptri[i].tri[j]].uv[0] * 2.0f - 1.0f;
- uv[1] = mloopuv[mlooptri[i].tri[j]].uv[1] * 2.0f - 1.0f;
+ uv[0] = mloopuv[mlooptri[i].tri[j]][0] * 2.0f - 1.0f;
+ uv[1] = mloopuv[mlooptri[i].tri[j]][1] * 2.0f - 1.0f;
multitex_ext_safe(tex, uv, &texres, pool, scene_color_manage, false);
@@@ -2178,8 -2179,8 +2179,8 @@@ typedef struct DynamicPaintCreateUVSurf
Vec3f *tempWeights;
const MLoopTri *mlooptri;
- const MLoopUV *mloopuv;
+ const float (*mloopuv)[2];
- const MLoop *mloop;
+ const int *corner_verts;
const int tottri;
const Bounds2D *faceBB;
@@@ -2196,8 -2197,8 +2197,8 @@@ static void dynamic_paint_create_uv_sur
Vec3f *tempWeights = data->tempWeights;
const MLoopTri *mlooptri = data->mlooptri;
- const MLoopUV *mloopuv = data->mloopuv;
+ const float(*mloopuv)[2] = data->mloopuv;
- const MLoop *mloop = data->mloop;
+ const int *corner_verts = data->corner_verts;
const int tottri = data->tottri;
const Bounds2D *faceBB = data->faceBB;
@@@ -2291,8 -2292,8 +2292,8 @@@ static void dynamic_paint_create_uv_sur
Vec3f *tempWeights = data->tempWeights;
const MLoopTri *mlooptri = data->mlooptri;
- const MLoopUV *mloopuv = data->mloopuv;
+ const float(*mloopuv)[2] = data->mloopuv;
- const MLoop *mloop = data->mloop;
+ const int *corner_verts = data->corner_verts;
uint32_t *active_points = data->active_points;
@@@ -2501,9 -2502,9 +2502,9 @@@ static void dynamic_paint_find_island_b
int in_edge,
int depth)
{
- const MLoop *mloop = data->mloop;
+ const int *corner_verts = data->corner_verts;
const MLoopTri *mlooptri = data->mlooptri;
- const MLoopUV *mloopuv = data->mloopuv;
+ const float(*mloopuv)[2] = data->mloopuv;
const uint *loop_idx = mlooptri[tri_index].tri;
@@@ -2798,7 -2799,8 +2799,7 @@@ int dynamicPaint_createUVSurface(Scene
PaintUVPoint *tempPoints = NULL;
Vec3f *tempWeights = NULL;
const MLoopTri *mlooptri = NULL;
- const MLoopUV *mloopuv = NULL;
+ const float(*mloopuv)[2] = NULL;
- const MLoop *mloop = NULL;
Bounds2D *faceBB = NULL;
int *final_index;
diff --cc source/blender/blenkernel/intern/fluid.c
index 091b73bde9f,b95d82e83d8..9366669b9b6
--- a/source/blender/blenkernel/intern/fluid.c
+++ b/source/blender/blenkernel/intern/fluid.c
@@@ -1787,9 -1787,9 +1787,9 @@@ static void update_distances(int index
static void sample_mesh(FluidFlowSettings *ffs,
const float (*vert_positions)[3],
const float (*vert_normals)[3],
- const MLoop *mloop,
+ const int *corner_verts,
const MLoopTri *mlooptri,
- const MLoopUV *mloopuv,
+ const float (*mloopuv)[2],
float *influence_map,
float *velocity_map,
int index,
@@@ -1982,9 -1982,9 +1982,9 @@@ typedef s
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list