Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 2328 / 5574

July 8, 2016, 16:11 (GMT)
Fix own very stupid mistake in BKE_library_idtype_can_use_idtype() usage (inverted arguments).
July 8, 2016, 16:11 (GMT)
Libquery: fix missing image pointers from Mesh's UV layers.

Not really happy with this, could lead to a **lot** of callback executions...
But libquery foreach looper must go over **all** ID pointers,
otherwise remapping & co is broken!

A possible fix for future would be to have 'image slots' defined at root of poly/facetex layers,
and just a (short) index in each face/poly item - would also save a reasonable amount of memory...
July 8, 2016, 16:11 (GMT)
Refactor/enhance BKE_object_make_local().

Now using modern features from libquery/libremap areas.

Also, it should handle much better cases where localized ID was also indirectly used by non-refcounting users
(typical case: object used as modifier/constraint/whatever target from another linked object, previous
code would not take those into account and just localize original object instead of making a local copy.
Would result in local object used by linked one, which would be partially 'undone' on next file reload... Crappy behavior).

And it fixes some obvious errors too (nullifying all proxy pointers unconditionnaly,
some missing refcounted usages cases in extern_local_object(), etc.).
July 8, 2016, 16:11 (GMT)
Refactor: pass Main to id_make_local.

Totally stupid to not pass it, and then let (some) BKE_foo_make_local() use G.main!

Note: unused for now, much more refactoring still to come in make_local area!
July 8, 2016, 16:11 (GMT)
Fix (unreported) missing special updates in case we are remapping obdata (mesh/curve/metaball at least).
July 8, 2016, 16:11 (GMT)
Rework/split test_object_materials().

Now test_object_materials only handles one object. New test_all_objects_materials
checks the whole bmain->object list for cases where it is actually needed.

Should avoid some useless looping over all objects!
July 8, 2016, 16:11 (GMT)
Refactor remapping's pre/post process of special cases.

Main issue was that BKE_libblock_relink_ex was pretty much ignoring all those...
Also, unlinking of objects was not handling correctly indirect-related flags.

Refactored code into helper functions to avoid too much duplicated code.
July 8, 2016, 16:10 (GMT)
Fix T48799: Particles set as objects cast wrong ray shadows in BI
July 8, 2016, 13:38 (GMT)
BMesh: add decimate edit-mode tool

Support applying decimate to the mesh selection.
July 8, 2016, 11:13 (GMT)
Correct error in non-uniform scale IK commit

Rename arg to avoid confusion
July 8, 2016, 07:41 (GMT)
Fix T48808: Regression: Cycles OpenCL broken after Hair BVH commit
July 8, 2016, 06:50 (GMT)
Mesh/Curve Join: remove edit-mode toggle

Toggling edit-node after joining objects is redundant as far as I can see -
(dates back to first revision).

Also caused all edges to be drawn w/ meshes, redundant undo step w/ curves.
July 8, 2016, 05:54 (GMT)
Undo: use system memcmp

`my_memcmp` didn't work properly comparing memory sizes not aligned to 4 bytes,
this worked while we used guarded-alloc (which always wrote a guard at the end of each allocation).
Since moving to lockfree allocator it could read uninitialized memory.

It also consistently performed ~10-30% worse then glibc's.
This is typically well optimized, no need to do ourselves.
July 8, 2016, 04:51 (GMT)
Fix T48807: Each stroke halves brush size

Missed from c5b2f12b
July 8, 2016, 04:36 (GMT)
writefile: optimize undo memory use

Slop-space on Linux wasted ~20% of memory for undo storage.
July 8, 2016, 00:27 (GMT)
Fix/Workaround non-uniform scaled bones failing w/ IK solver

Scaling a bone on the Y axis (for a stretch effect), wasn't supported by the IK solver.

Support this by solving as uniform scaled bones by matching the X,Z axis to the Y.

Requested by @pepeland, see D2088 for details.
July 8, 2016, 00:14 (GMT)
Cleanup: use normalize_v#_length
July 7, 2016, 23:52 (GMT)
BLI_math: add normalize functions which fit to a length

Convenient since its common to normalize then scale,
since these are inlined, use for regular normalize w/ 1.0 length.
July 7, 2016, 23:49 (GMT)
Cleanup: spelling
July 7, 2016, 19:21 (GMT)
Make use of new 'idtype can use idtype' check (in ID usages code, and ID remapping one too).

Reduces calls to BKE_library_foreach_ID_link() from 312 to 105 when relocating a library in a
rather simple lib reload test...
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021