Merge branch 'master' into blender2.8
This commit is contained in:
@@ -437,8 +437,8 @@ static void shrinkwrap_calc_normal_projection(ShrinkwrapCalcData *calc, bool for
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (targ_tree = bvhtree_from_mesh_get(
|
||||
&treedata_stack.dmtreedata, calc->target, BVHTREE_FROM_LOOPTRI, 4))
|
||||
if ((targ_tree = bvhtree_from_mesh_get(
|
||||
&treedata_stack.dmtreedata, calc->target, BVHTREE_FROM_LOOPTRI, 4)))
|
||||
{
|
||||
targ_callback = treedata_stack.dmtreedata.raycast_callback;
|
||||
treeData = &treedata_stack.dmtreedata;
|
||||
|
||||
@@ -105,7 +105,7 @@ static void mesh_calc_hq_normal(Mesh *mesh, float (*face_nors)[3], float (*r_ver
|
||||
EdgeFaceRef *edge_ref;
|
||||
float edge_normal[3];
|
||||
|
||||
/* This loop adds an edge hash if its not there, and adds the face index */
|
||||
/* Add an edge reference if it's not there, pointing back to the face index. */
|
||||
for (i = 0; i < numFaces; i++, mp++) {
|
||||
int j;
|
||||
|
||||
@@ -138,12 +138,12 @@ static void mesh_calc_hq_normal(Mesh *mesh, float (*face_nors)[3], float (*r_ver
|
||||
if (edgeref_is_init(edge_ref) && (edge_ref->f1 != -1)) {
|
||||
if (edge_ref->f2 != -1) {
|
||||
/* We have 2 faces using this edge, calculate the edges normal
|
||||
* using the angle between the 2 faces as a weighting */
|
||||
* using the angle between the 2 faces as a weighting */
|
||||
#if 0
|
||||
add_v3_v3v3(edge_normal, face_nors[edge_ref->f1], face_nors[edge_ref->f2]);
|
||||
normalize_v3_length(
|
||||
edge_normal,
|
||||
angle_normalized_v3v3(face_nors[edge_ref->f1], face_nors[edge_ref->f2]));
|
||||
edge_normal,
|
||||
angle_normalized_v3v3(face_nors[edge_ref->f1], face_nors[edge_ref->f2]));
|
||||
#else
|
||||
mid_v3_v3v3_angle_weighted(edge_normal, face_nors[edge_ref->f1], face_nors[edge_ref->f2]);
|
||||
#endif
|
||||
@@ -901,15 +901,16 @@ static Mesh *applyModifier(
|
||||
|
||||
#ifdef SOLIDIFY_SIDE_NORMALS
|
||||
if (do_side_normals) {
|
||||
const MEdge *ed_orig = medge;
|
||||
ed = medge + (numEdges * stride);
|
||||
for (i = 0; i < rimVerts; i++, ed++) {
|
||||
for (i = 0; i < rimVerts; i++, ed++, ed_orig++) {
|
||||
float nor_cpy[3];
|
||||
short *nor_short;
|
||||
int k;
|
||||
|
||||
/* note, only the first vertex (lower half of the index) is calculated */
|
||||
BLI_assert(ed->v1 < numVerts);
|
||||
normalize_v3_v3(nor_cpy, edge_vert_nos[ed->v1]);
|
||||
normalize_v3_v3(nor_cpy, edge_vert_nos[ed_orig->v1]);
|
||||
|
||||
for (k = 0; k < 2; k++) { /* loop over both verts of the edge */
|
||||
nor_short = mvert[*(&ed->v1 + k)].no;
|
||||
|
||||
Reference in New Issue
Block a user