Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Goudey <h.goudey@me.com>2022-09-14 08:15:31 +0300
committerHans Goudey <h.goudey@me.com>2022-09-14 08:15:31 +0300
commitb9f9800c66472a811dd687195f76602852e41403 (patch)
tree6dc106e8e6de7b573158a55f9ae7435e1e0578cf /source/blender/render/intern
parentc25890dc02ec8e8437058274516d7ca61d594922 (diff)
Compiles, runs in basic situations
Diffstat (limited to 'source/blender/render/intern')
-rw-r--r--source/blender/render/intern/bake.c6
-rw-r--r--source/blender/render/intern/multires_bake.c9
-rw-r--r--source/blender/render/intern/texture_margin.cc8
3 files changed, 13 insertions, 10 deletions
diff --git a/source/blender/render/intern/bake.c b/source/blender/render/intern/bake.c
index 3d7865f5651..c49481495a8 100644
--- a/source/blender/render/intern/bake.c
+++ b/source/blender/render/intern/bake.c
@@ -497,9 +497,9 @@ static TriTessFace *mesh_calc_tri_tessface(Mesh *me, bool tangent, Mesh *me_eval
const MLoopTri *lt = &looptri[i];
const MPoly *mp = &polys[lt->poly];
- triangles[i].positions[0] = &positions[loops[lt->tri[0]].v];
- triangles[i].positions[1] = &positions[loops[lt->tri[1]].v];
- triangles[i].positions[2] = &positions[loops[lt->tri[2]].v];
+ triangles[i].positions[0] = positions[loops[lt->tri[0]].v];
+ triangles[i].positions[1] = positions[loops[lt->tri[1]].v];
+ triangles[i].positions[2] = positions[loops[lt->tri[2]].v];
triangles[i].vert_normals[0] = vert_normals[loops[lt->tri[0]].v];
triangles[i].vert_normals[1] = vert_normals[loops[lt->tri[1]].v];
triangles[i].vert_normals[2] = vert_normals[loops[lt->tri[2]].v];
diff --git a/source/blender/render/intern/multires_bake.c b/source/blender/render/intern/multires_bake.c
index 96a59d22869..e1d6b3dfd50 100644
--- a/source/blender/render/intern/multires_bake.c
+++ b/source/blender/render/intern/multires_bake.c
@@ -472,7 +472,7 @@ static void do_multires_bake(MultiresBakeRender *bkr,
MultiresBakeThread *handles;
MultiresBakeQueue queue;
- const float(*positions)[3] = dm->getVertArray(dm);
+ const float(*positions)[3] = (float(*)[3])dm->getVertArray(dm);
MPoly *mpoly = dm->getPolyArray(dm);
MLoop *mloop = dm->getLoopArray(dm);
MLoopUV *mloopuv = dm->getLoopDataArray(dm, CD_MLOOPUV);
@@ -485,9 +485,8 @@ static void do_multires_bake(MultiresBakeRender *bkr,
Mesh *temp_mesh = BKE_mesh_new_nomain(
dm->getNumVerts(dm), dm->getNumEdges(dm), 0, dm->getNumLoops(dm), dm->getNumPolys(dm));
- memcpy(BKE_mesh_positions_for_write(temp_mesh),
- dm->getVertArray(dm),
- temp_mesh->totvert * sizeof(float[3]));
+ memcpy(
+ BKE_mesh_positions_for_write(temp_mesh), positions, temp_mesh->totvert * sizeof(float[3]));
memcpy(BKE_mesh_edges_for_write(temp_mesh),
dm->getEdgeArray(dm),
temp_mesh->totedge * sizeof(MEdge));
@@ -503,7 +502,7 @@ static void do_multires_bake(MultiresBakeRender *bkr,
if (require_tangent) {
if (CustomData_get_layer_index(&dm->loopData, CD_TANGENT) == -1) {
BKE_mesh_calc_loop_tangent_ex(
- dm->getVertArray(dm),
+ positions,
dm->getPolyArray(dm),
dm->getNumPolys(dm),
dm->getLoopArray(dm),
diff --git a/source/blender/render/intern/texture_margin.cc b/source/blender/render/intern/texture_margin.cc
index e2a36edd6d5..6d8e08e391a 100644
--- a/source/blender/render/intern/texture_margin.cc
+++ b/source/blender/render/intern/texture_margin.cc
@@ -519,8 +519,12 @@ static void generate_margin(ImBuf *ibuf,
tottri = poly_to_tri_count(me->totpoly, me->totloop);
looptri_mem = static_cast<MLoopTri *>(MEM_mallocN(sizeof(*looptri) * tottri, __func__));
- BKE_mesh_recalc_looptri(
- mloop, mpoly, me->positions().data(), me->totloop, me->totpoly, looptri_mem);
+ BKE_mesh_recalc_looptri(mloop,
+ mpoly,
+ reinterpret_cast<const float(*)[3]>(me->positions().data()),
+ me->totloop,
+ me->totpoly,
+ looptri_mem);
looptri = looptri_mem;
}
else {