Merge branch 'blender-v4.2-release'
# Conflicts: # tests/data
This commit is contained in:
commit
8ba25aed02
@ -1496,6 +1496,9 @@ static int make_links_data_exec(bContext *C, wmOperator *op)
|
|||||||
/* if amount of material indices changed: */
|
/* if amount of material indices changed: */
|
||||||
BKE_object_materials_test(bmain, ob_dst, static_cast<ID *>(ob_dst->data));
|
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);
|
DEG_id_tag_update(&ob_dst->id, ID_RECALC_GEOMETRY);
|
||||||
break;
|
break;
|
||||||
case MAKE_LINKS_MATERIALS:
|
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());
|
mul_v3_m3v3(xform[3], axes_transform, obj_eval->object_to_world().location());
|
||||||
xform[3][3] = obj_eval->object_to_world()[3][3];
|
xform[3][3] = obj_eval->object_to_world()[3][3];
|
||||||
|
|
||||||
|
const bool mirrored = is_negative_m4(xform);
|
||||||
|
|
||||||
/* Write triangles. */
|
/* Write triangles. */
|
||||||
const Span<float3> positions = mesh->vert_positions();
|
const Span<float3> positions = mesh->vert_positions();
|
||||||
const Span<int> corner_verts = mesh->corner_verts();
|
const Span<int> corner_verts = mesh->corner_verts();
|
||||||
for (const int3 &tri : mesh->corner_tris()) {
|
for (const int3 &tri : mesh->corner_tris()) {
|
||||||
PackedTriangle data{};
|
PackedTriangle data{};
|
||||||
for (int i = 0; i < 3; i++) {
|
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);
|
mul_m4_v3(xform, pos);
|
||||||
pos *= global_scale;
|
pos *= global_scale;
|
||||||
data.vertices[i] = pos;
|
data.vertices[i] = pos;
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit 00addf7bcfaad2b0f0cb609a5a2afcf58a348e7d
|
Subproject commit ee2eac8332c3729c44f93d1d0749dd7ec54a6165
|
Loading…
Reference in New Issue
Block a user