Blender Git Commit Log

All Blender Git commits.

Page: 874 / 8462

Revision a344f20 by Hans Goudey (master)
March 2, 2021, 18:43 (GMT)
UI: Rename search button variable

I landed D10527 in rB1a8aee0a7cec accidentally, and the version there was
missing a name change discussed in review. This commit just renames the
boolean variable controlling the special behavior for attribute search.

Original message meant for this change:
For geometry nodes we will use search buttons to display a list of
attributes available the last time the node tree was executed (D10519).
Because this list is just a hint, we need to be able to enter any string,
not just strings from the search items.

This patch adds a boolean option to string buttons to enable this.
The change is quite simple, changes to behavior are only required in
two places. The type-specific button struct changes help a lot here.

Differential Revision: https://developer.blender.org/D10527
March 2, 2021, 18:08 (GMT)
CMake/deps: Append platform CFLAGS and LDFLAGS to Python build to ensure compatibility with minimum macOS version

Similarly to other dependencies, the Python build should make use of the default CMake arguments. On macOS, for example, these arguments are required to set the deployment target correctly.

See also: https://devtalk.blender.org/t/compiling-latest-branch-on-macos-fails-undefined-symbol/17649

Reviewed By: brecht, sybren

Differential Revision: https://developer.blender.org/D10498
March 2, 2021, 17:58 (GMT)
UI: Clean up labels and descriptions: "Draw" to "Display"

In Blender, we used to use the term 'draw' to refer to information
displayed to the user. For version 2.80, it was decided to change these
instances to 'display' instead. This was to avoid the ambiguity between
end-user drawing tools and display options.

From the Oxford English Dictionary:
- Draw: produce (a picture or diagram) by making lines and marks on
paper with a pencil, pen, etc.
- Display: show (data or an image) on a computer, television, or
other screen.

Therefore, we should use draw when referring to drawing tools for
making marks, but use display when referring to information
shown/displayed to the user. From a user POV, the computer displays
certain information, whereas the user draws a mark.

Apparently this change was not implemented consistently, so this patch
changes all remaining relevant instances of "draw".

Differential Revision: https://developer.blender.org/D10551
Revision 1a8aee0 by Hans Goudey (master)
March 2, 2021, 17:42 (GMT)
UI: Expose an "is first search" boolean to search button callbacks

Currently when you open an RNA collection search button, like a
vertex group selector, the search filter isn't applied until you
start typing, in order to display every option at the start.
Otherwise they wouldn't be visible, since the search filter would
run for the current text.

Currently this check happens in one place, but it relies on the
`changed` value of `uiBut`. This is fine in the interface directory,
but anywhere else it would require exposing `uiBut.changed`, which
is probably too low-level to expose.

The solution is adding an `is_first` argument to the search callbacks,
which is nice for a few reasons:
- They work at a higher level of abstraction, meaning they don't
have to worry about how exactly to tell if this is the first
search.
- It makes it easier to do special behavior when the search menu
is first opened.
- Then, obviously, it makes that state accessible without including
`interface_intern.h`.

Needed for attribute search: T85658

Differential Revision: https://developer.blender.org/D10528
March 2, 2021, 17:26 (GMT)
Merge branch 'master' of https://gitlab-master.nvidia.com/omniverse/blender into omniverse
Revision 5a3b7c5 by Hans Goudey (master)
March 2, 2021, 17:08 (GMT)
Fix Node UI Storage Threading Issues

Since the same node tree can be used in modifiers on different objects,
there can be multiple threads writing to the maps in the node tree UI
storage at the same time. The additions for attribute name hints and
error messages made it so this would often cause a crash or at least
an ASAN report. This patch adds locks to prevent multiple threads
from using the maps concurrently.

In a brief test I actually didn't observe a crash without the global
`bNodeTree` UI storage mutex, but I think it's necessary for the change
to be correct, and I did notice some unfreed memory without it anyway.
Ideally it would be in a node tree runtime struct though.

Differential Revision: https://developer.blender.org/D10577
March 2, 2021, 17:00 (GMT)
EEVEE: Fix incorrect volumetric light shadowing

The shadowing was computed on the light distance squared,
leaking to much light since it was integrating the extinction behind
the ligth itself.

Also bump the maximum shadow max step to the actual UI values. Otherwise
we get shadowing under evaluated because `dd` is too small.
March 2, 2021, 16:54 (GMT)
Fix (unreported) light cache bake crash

missing NULL check if there is no cache there to begin with.

Differential Revision: https://developer.blender.org/D10581
March 2, 2021, 16:47 (GMT)
Fix Fuild error with lite build

With audaspace disabled, function SEQ_add_sound_strip was declared as prototype.
March 2, 2021, 16:46 (GMT)
ISD Import: Fixed compiler warnings.
March 2, 2021, 16:05 (GMT)
Merge branch 'master' into sculpt-dev
March 2, 2021, 15:53 (GMT)
Sculpt: Expand Operator

Expand is a new operator for Sculpt Mode which is intended to be the main
tool for masking, Face Set editing, interacting with the filters and pattern
creation.

The fundamentals of the tool are similar to the previous sculpt.mask_expand
operator. It shares the same default shortcuts and functionality, making
the previous operator obsolete.

The shortcuts to execute the operator are:
- Shift + A: Expand mask
- Shift + Alt + A: Expand mask by normals
- Shift + W: Expand Face Set
- Shift + Alt + W: Resize current Face Set

The main changes compared to the previous sculpt.mask_expand operator are:
- Modal keymap, all operator options can be changed in real time while the
operator is running.
- Supports creating Mask, Face Sets and Sculpt Vertex Colors.
- Much better code, new features can be easily integrated.

Limitations:
- All Mask operations are supported for Sculpt Vertex colors, but not exposed
by default as their support is still experimental.
- Dyntopo does not support any Face Set or Sculpt Vertex Colors. functionality
(they are not implemented in general for Dyntopo).
- Multires does not support any feature related to geodesic distances.
- Multires does not support vertex colors.
- Multires does not support recursions.
- In Multires, Face Sets snaping does not initialize all current enabled Face
Sets when toggling snapping.
- In Multires, Face Sets are created at base mesh level (works by this by
design, like any other tool).
- Unlike the previous mask_expand operator, this one does not blur the mask
by default after finishing Expand as that does not fit the new design.
The mask can still be blurred by using the mask filter manually.

Reviewed By: JacquesLucke

Differential Revision: https://developer.blender.org/D10455
March 2, 2021, 15:23 (GMT)
Refactor UIList template for further changes and to fix some glitches

Could go further than that, I think this would benefit from some C++
features, but we can do that in another pass.
March 2, 2021, 15:21 (GMT)
Fix T86026: Crash Opening Cryptomatte File.

Not sure this fixes the root cause. It seems that memory corruption
happens in dynstr. This patch replaces dynstr with a streamstring.
March 2, 2021, 14:21 (GMT)
Fix crash on NULL dereference

Caused by e1f3996d740c, `seq_update_meta_disp_range()` did not check if
sequencer data exists.
March 2, 2021, 13:27 (GMT)
Fix T86122: Performance Debug View Viewport Not Working

The performance debug menu isn't used that often anymore as render doc
also show the timings. This patch will make sure that enabling the
performance debug view (21) does not crash blender.
March 2, 2021, 13:21 (GMT)
Cleanup: remove unused arguments
March 2, 2021, 13:16 (GMT)
Fix compilation without CUDA enabled

Also ensure own headers are always coming first in the implementation
file by putting them to own "group" (add empty line after the include
statement). Ensures that there are no implicit dependencies in the
header.
March 2, 2021, 13:11 (GMT)
Fix error in rBb9e1cc931ee9

Bad copy paste...
March 2, 2021, 12:56 (GMT)
Fix T86138 EEVEE: Bake Indirect Lighting crash in 2.93 with older files

This was caused by a missing version check.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021