[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