Blender Git Commits

Blender Git "master" branch commits.

Page: 935 / 5574

January 24, 2020, 08:57 (GMT)
Merge branch 'blender-v2.82-release'
January 24, 2020, 08:54 (GMT)
Fix T72083: Object.proxy_collection is been set to linked target object
even when target is not a collection

Looks like this was (accidentally) removed in {rBbe9e469ead22}
https://developer.blender.org/
rBbe9e469ead227aee8d4c29b98a125cf599c5c8bb#change-pFg0VUTAHY2q

This could also result in a missing update in
object_handle_update_proxy, see T72083 for an example.

Thx @Macroni investigating!

Maniphest Tasks: T72083

Differential Revision: https://developer.blender.org/D6651
January 24, 2020, 08:43 (GMT)
Merge branch 'blender-v2.82-release'
Revision c543688 by Clément Foucault
January 23, 2020, 20:38 (GMT)
Fix T69121 DRW: Missing depth buffer refresh with GPencil + Cycles

I just cleaned up the logic and checked for GPencil objects in the scene.
January 23, 2020, 18:56 (GMT)
Fix T71374 EEVEE: Fix Node group socket not converting inputs as in Cycles

Pretty straight Forward. Create a temp node during sockets expansion to
force the conversion to float.
January 23, 2020, 16:15 (GMT)
Fix T72789: Mantaflow cache doesn't work with non-latin cache directory

Root of the problem was that Manta's Python API was converting to and from Latin1 instead of UTF8.
January 23, 2020, 15:59 (GMT)
Merge branch 'blender-v2.82-release'
January 23, 2020, 15:59 (GMT)
CMake: Refactor external dependencies handling

This is a more correct fix to the issue Brecht was fixing in D6600.

While the fix in that patch worked fine for linking it broke ASAN
runtime under some circumstances.
For example, `make full debug developer` would compile, but trying
to start blender will cause assert failure in ASAN (related on check
that ASAN is not running already).

Top-level idea: leave it to CMake to keep track of dependency graph.

The root of the issue comes to the fact that target like "blender" is
configured to use a lot of static libraries coming from Blender sources
and to use external static libraries. There is nothing which ensures
order between blender's and external libraries. Only order of blender
libraries is guaranteed.

It was possible that due to a cycle or other circumstances some of
blender libraries would have been passed to linker after libraries
it uses, causing linker errors.

For example, this order will likely fail:

libbf_blenfont.a libfreetype6.a libbf_blenfont.a

This change makes it so blender libraries are explicitly provided
their dependencies to an external libraries, which allows CMake to
ensure they are always linked against them.

General rule here: if bf_foo depends on an external library it is
to be provided to LIBS for bf_foo.
For example, if bf_blenkernel depends on opensubdiv then LIBS in
blenkernel's CMakeLists.txt is to include OPENSUBDIB_LIBRARIES.

The change is made based on searching for used include folders
such as OPENSUBDIV_INCLUDE_DIRS and adding corresponding libraries
to LIBS ion that CMakeLists.txt. Transitive dependencies are not
simplified by this approach, but I am not aware of any downside of
this: CMake should be smart enough to simplify them on its side.
And even if not, this shouldn't affect linking time.

Benefit of not relying on transitive dependencies is that build
system is more robust towards future changes. For example, if
bf_intern_opensubiv is no longer depends on OPENSUBDIV_LIBRARIES
and all such code is moved to bf_blenkernel this will not break
linking.

The not-so-trivial part is change to blender_add_lib (and its
version in Cycles). The complexity is caused by libraries being
provided as a single list argument which doesn't allow to use
different release and debug libraries on Windows. The idea is:

- Have every library prefixed as "optimized" or "debug" if
separation is needed (non-prefixed libraries will be considered
"generic").

- Loop through libraries passed to function and do simple parsing
which will look for "optimized" and "debug" words and specify
following library to corresponding category.

This isn't something particularly great. Alternative would be to
use target_link_libraries() directly, which sounds like more code
but which is more explicit and allows to have more flexibility
and control comparing to wrapper approach.

Tested the following configurations on Linux, macOS and Windows:

- make full debug developer
- make full release developer
- make lite debug developer
- make lite release developer

NOTE: Linux libraries needs to be compiled with D6641 applied,
otherwise, depending on configuration, it's possible to run into
duplicated zlib symbols error.

Differential Revision: https://developer.blender.org/D6642
January 23, 2020, 15:59 (GMT)
Make deps: Fix zlib symbols defined twice

We compile zlib as own dependency, but are not informing BLOSC
to use it. This leads to zlib symbols defined twice when linking
Blender: one set comes from libz.a and another one from libblosc.a.

Tested on Linux Debian testing and CentOS 7.5.

It is possible that this change on its own will lead to linking
errors after libraries are re-compiled, This will be fixed as
a dedicated fix to Blender's build system.

Reviewed By: brecht, mont29, LazyDodo

Differential Revision: https://developer.blender.org/D6641
January 23, 2020, 15:56 (GMT)
Merge branch 'blender-v2.82-release'
January 23, 2020, 15:55 (GMT)
Fix T73327: GPencil strength sculpt brush not working with small brush radius

The problem was related to the smooth of the strength. As the factor was very low and the value was smoothed , the result was almost nothing when the radius was very small. Now the factor is higher and the smooth is done after clamping pressure.
January 23, 2020, 14:41 (GMT)
Fix T67050 Overlay: Forcefield limits are not dashed

This adds some kind of dashing to the tube and cone limits. Although the
dashing is in object space and is not a good as old dashing. But it is
the least time consuming and least complex solution.
January 23, 2020, 14:41 (GMT)
Fix T66956 EEVEE: NaN produced by bad geometry mess with the DoF

Sanitize the source of the depth of field.
January 23, 2020, 14:41 (GMT)
Fix T73335 Overlay: Light Distance line does not represent custom distance

This is a fix to the issue that light distance line end does not represent
anything now that shadow bounds are computed automatically.
January 23, 2020, 13:53 (GMT)
UI: Text Editor header cleanup

- Register toggle is in the Text menu
- Run Script and Refresh OSL become an icon buttons next to ID block

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

Reviewed by Campbell Barton
January 23, 2020, 13:44 (GMT)
Fix T51011: bpy.ops.action.new does nothing when invoked from script

The operator always expect to be called form a button.
But this is not always the case.

This does not bring functional changes when not called from python.
January 23, 2020, 13:39 (GMT)
Fix T71311 Bridge Edge Loops crash when bridging cube edges

This commit will prevent the crash. It does produce a result that may not
be desirable (only briding one face of the cube), but at least it's better
than crashing.
January 23, 2020, 13:38 (GMT)
UI: Make default Info Editor theme more consistent with Outliner (round 2)

Fixes an error in the first version of this commit. Accidentally included theme entries from anther patch which isn't yet merged.
January 23, 2020, 13:21 (GMT)
Fix: Use a minimal alignment of 8 in MEM_lockfree_mallocN_aligned

`posix_memalign` requires the `alignment` to be at least `sizeof(void *)`.
Previously, `MEM_mallocN_aligned` would simply return `NULL` if a too small
`alignment` was used. This was an OS specific issue.

The solution is to use a minimal alignment of `8` for all aligned allocations.
The unit tests have been extended to test more possible alignments (some
of which were broken before).

Reviewers: brecht

Differential Revision: https://developer.blender.org/D6660
January 23, 2020, 12:43 (GMT)
Revert "UI: Make default Info Editor theme more consistent with Outliner"

This reverts commit dc96995b03072df3d6756cabbabf62226ccc5b5d.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021