Merge branch 'blender-v4.2-release'

# Conflicts:
#	tests/data
This commit is contained in:
Aras Pranckevicius 2024-07-05 12:13:17 +03:00
commit 8ba25aed02
3 changed files with 9 additions and 2 deletions

@ -1496,6 +1496,9 @@ static int make_links_data_exec(bContext *C, wmOperator *op)
/* if amount of material indices changed: */
BKE_object_materials_test(bmain, ob_dst, static_cast<ID *>(ob_dst->data));
if (ob_dst->type == OB_ARMATURE) {
BKE_pose_rebuild(bmain, ob_dst, static_cast<bArmature *>(ob_dst->data), true);
}
DEG_id_tag_update(&ob_dst->id, ID_RECALC_GEOMETRY);
break;
case MAKE_LINKS_MATERIALS:

@ -122,13 +122,17 @@ void export_frame(Depsgraph *depsgraph,
mul_v3_m3v3(xform[3], axes_transform, obj_eval->object_to_world().location());
xform[3][3] = obj_eval->object_to_world()[3][3];
const bool mirrored = is_negative_m4(xform);
/* Write triangles. */
const Span<float3> positions = mesh->vert_positions();
const Span<int> corner_verts = mesh->corner_verts();
for (const int3 &tri : mesh->corner_tris()) {
PackedTriangle data{};
for (int i = 0; i < 3; i++) {
float3 pos = positions[corner_verts[tri[i]]];
/* Reverse face order for mirrored objects. */
int idx = mirrored ? 2 - i : i;
float3 pos = positions[corner_verts[tri[idx]]];
mul_m4_v3(xform, pos);
pos *= global_scale;
data.vertices[i] = pos;

@ -1 +1 @@
Subproject commit 00addf7bcfaad2b0f0cb609a5a2afcf58a348e7d
Subproject commit ee2eac8332c3729c44f93d1d0749dd7ec54a6165