Blender Git Commits

Blender Git "master" branch commits.

Page: 453 / 5574

December 18, 2020, 01:06 (GMT)
UI: Don't use abbreviations in label text

Expand abbreviations for words like "Bright" (instead of "Brightness"),
"Premul", "Lib", "Dir", etc.

Differential Revision: https://developer.blender.org/D9862
Revision 23233fc by Hans Goudey
December 17, 2020, 20:43 (GMT)
Cleanup: Use abstraction for attribute math node input

Since creating the attribute node, a helper function has been added to
automatically get the input attribute or a constant value, depending on
the "input type" values for the node. This commit replaces the specific
implementation of that behavior with the new helper function.

The versioning is necessary since the node now has a "storage" struct.
December 17, 2020, 19:08 (GMT)
Color Management: use scene linear HSV for number buttons in color pickers

Previously these HSV values were in the color picking space, which meant the
relation to the scene linear RGB values was confusing.

The new situation:
* RGB number buttons: scene linear color space
* HSV number buttons: scene linear color space
* Picker widgets: color picking color space
* Hex: sRGB color space

Fixes T69562, T83853, Ref T68926
December 17, 2020, 19:08 (GMT)
Cleanup: renaming and code deduplication for color space clarity in picker

Ref T68926
Revision 48ddb94 by Hans Goudey
December 17, 2020, 18:22 (GMT)
Geometry Nodes: Point separate and attribute compare nodes

This patch adds two related nodes, a node for separating points
and mesh vertices based on a boolean attribute input, and a node
for creating boolean attributes with comparisons.

See the differential for an example file and video.

Point Separate (T83059)
The output in both geometries is just point data, contained in the mesh
and point cloud components, depending which components had data in the
input geometry. Any points with the mask attribute set to true will be
moved from the first geometry output to the second. This means that
for meshes, all edge and face data will be removed. Any point domain
attributes are moved to the correct output geometry as well.

Attribute Compare (T83057)
The attribute compare does the "Equal" and "Not Equal" operations by
comparing vectors and colors based on their distance from each other.
For other operations, the comparison is between the lengths of the
vector inputs. In general, the highest complexity data type is used
for the operation, and a new function to determine that is added.

Differential Revision: https://developer.blender.org/D9876
December 17, 2020, 15:28 (GMT)
Updated and extended Regression Testing frameworks (Gsoc 2020)

This revision contains the following changes-

- Updated the existing testing framework for Modifiers for Regression
Testing.
- Tests for Physics modifiers and remaining Generate and Deform modifiers are added.
- The existing `ModifierSpec` is updated with backward compatibility to support Physics Modifiers.
- Now there is support for frame number and giving nested parameters for attributes.
- Some Deform modifiers required Object Operators, e.g. "Bind" in Mesh Deform, so a new class was added to support that functionality.
- A separate class for holding Particles System, they are tested by converting all the particles to mesh and joining it to the mesh they were added.
- Updated the format to add tests for Bevel, Boolean and Operators as
well.

Reviewed By: zazizizou, mont29, campbellbarton

Differential Revision: https://developer.blender.org/D8507
December 17, 2020, 15:05 (GMT)
Fix T83888: Ctrl F in Asset Browser crashes blender

In case of being in Asset browsing mode, the search field is located in
the header (RGN_TYPE_HEADER not RGN_TYPE_UI as for file browsing mode).
To be future proof, now iterate all regions and act if the
"filter_search" can be activated.

Maniphest Tasks: T83888

Differential Revision: https://developer.blender.org/D9882
December 17, 2020, 15:00 (GMT)
Fix T83886: Particle instance modifier broken

Caused by Caused by rB83980506957c.

Since above commit, the modifier was created with wrong initial values
[amount was 0.0 and offset was 1.0 -- instead of the other way around].

Since there is no way to fix existing files in a reasonable way I guess,
all we can do here is to make sure that from now on, the defaults are
correct.

Maniphest Tasks: T83886

Differential Revision: https://developer.blender.org/D9881
Revision c9f8f79 by Hans Goudey
December 17, 2020, 13:43 (GMT)
Geometry Nodes: Make random attribute node stable

Currently, the random attribute node doesn't work well for most
workflows because for any change in the input data it outputs
completely different results.

This patch adds an implicit seed attribute input to the node, referred
to by "id". The attribute is hashed for each element using the CPPType
system's hash method, meaning the attribute can have any data type.
Supporting any data type is also important so any attribute can be
copied into the "id" attribute and used as a seed.

The "id" attribute is an example of a "reserved name" attribute,
meaning attributes with this name can be used implicitly by nodes like
the random attribute node. Although it makes it a bit more difficult
to dig deeper, using the name implicitly rather than exposing it as an
input should make the system more accessible and predictable.

Differential Revision: https://developer.blender.org/D9832
December 17, 2020, 13:31 (GMT)
Geometry-Nodes: Point Distribute - Sockets Renaming

The size of the nodes is not enough to give enough context to users what
the sockets are about.

Minimum Distance -> Distance Min
Maximum Density -> Distance Min

Note this does not handle doversion. That means users will have to
manually.
December 17, 2020, 12:24 (GMT)
Explicitly link X11 libraries

Fix X11 library underlinking, which was breaking Debian and Ubuntu
packages.

From Ubuntu Hirsute changelog:

```
blender (2.83.5+dfsg-4ubuntu1) hirsute; urgency=medium

* Try to also link ghost library with x11, needed because of missing
XConvertSelection symbol link (used in ghost static library).
* Don't use gold, but switch to bfd linker that seems to be working better
on ppc64el.

-- Gianfranco Costamagna <locutusofborg@debian.org> Wed, 11 Nov 2020 14:17:29 +0100
```

Reviewed by: sybren

Differential Revision: https://developer.blender.org/D9617
December 17, 2020, 11:05 (GMT)
Fix T83875: Converting Proxy to override crashes blender.

Some weird proxies apparently can have a local collection instancing...
Not sure this is even really valid for proxies, but in any case we
cannot override that, just detect and properly cancel the operation
then.

Should be backported to 2.91.1 should we do it.
December 17, 2020, 10:56 (GMT)
Geometry Nodes: add Attribute Color Ramp node

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

Ref T82585.
Revision 2945c1e by Julian Eisel
December 17, 2020, 10:39 (GMT)
Fix asset data-block name button not showing up in custom repositories

The Python syntax was wrong, as noted by Campbell in 0ae15e68c785.
Revision 6203a3e by Julian Eisel
December 17, 2020, 10:24 (GMT)
Fix T83878: Crash right-clicking in Asset Browser with no asset active

Data of the File Browser context callback needs to be validated and
return `CTX_RESULT_NO_DATA` if the context member is valid but not set
in the current context.
December 17, 2020, 04:03 (GMT)
Clean-up: Fix build warning with MSVC

Callback function was using int while update_render_passes_cb_t was
using eNodeSocketDatatype leading to a build warning about different
argument types with MSVC.
December 17, 2020, 01:32 (GMT)
VSE: Fix crash when adding image strip

Crash happens when using relative path to image in operator properties
and checking image dimensions by loading image with `IMB_loadiffname()`

Ensure path is absolute.
December 17, 2020, 01:19 (GMT)
Fix T83869: Crash when creating Sequencer in new scene

Crash on null dereference in `SEQ_timeline_boundbox()`. This function was
generalized in rB9e4a4c2e996c to work on arbitrary `seqbase`.

Fixed by refactoring `SEQ_timeline_boundbox()` functions to return default
sane values if `seqbase` is `NULL`

Reviewed By: HooglyBoogly

Differential Revision: https://developer.blender.org/D9878
December 16, 2020, 23:32 (GMT)
Synchronize Wintab and Win32 time.

Time is synchronized by the difference between the WT_PACKET receive
time and the last received PACKET's pkTime. This is used to prevent
Wintab packets from being prematurely expired.
Revision 9f58843 by Hans Goudey
December 16, 2020, 20:40 (GMT)
Fix T83861: Snapping panel from shortcut dissapears after click

This simple change sets the call_panel operator's "keep_open" property
to True for the viewport snapping panel called with `ctrl-shift-tab`.
There are quite a few settings in this panel, it often makes sense to
change more than one of them at a time, especially because multiple
snap elements can be active at the same time.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021