Blender Git Commit Log

Git Commits -> Revision 2f77119

Revision 2f77119 by Sergey Sharybin (master)
May 29, 2019, 08:44 (GMT)
Fix T58251: Cycles ignores linked meshes when rendering

The idea is to share a mesh data-block as a result across all objects
which are sharing same original mesh and have no effective modifiers.
This mesh is owned by an original copy-on-written version of object data.

Tricky part is to make sure it is only initialized once, and currently a
silly mutex lock is used. In practice it only locks if the mesh is not
already there.

As an extra bonus, even viewport memory is also lower after this change.

Reviewers: brecht, mont29

Reviewed By: brecht, mont29

Differential Revision: https://developer.blender.org/D4954

Commit Details:

Full Hash: 2f7711962a69de8192d048514e5927e49a1a63a2
Parent Commit: da7e5e8
Lines Changed: +125, -39

6 Modified Paths:

/source/blender/blenkernel/intern/DerivedMesh.c (+83, -34) (Diff)
/source/blender/blenkernel/intern/mesh.c (+2, -0) (Diff)
/source/blender/blenkernel/intern/mesh_runtime.c (+17, -0) (Diff)
/source/blender/blenkernel/intern/object.c (+13, -5) (Diff)
/source/blender/makesdna/DNA_mesh_types.h (+6, -0) (Diff)
/source/blender/makesdna/DNA_object_types.h (+4, -0) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021