Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 287 / 5574

Revision 1d7ee50 by Hans Goudey
May 3, 2021, 13:00 (GMT)
Geometry Nodes: Parallelize attribute nodes

This commit significantly speeds up many of the attribute nodes when
multiple threads are available in linear situations when parallelism
cannot be achieved elsewhere.

See the differential for a table of timing comparisons tested on a
Ryzen 3700x. For an attribute with 4 million elements, the nodes were
about 3 to 9 times faster.

The changes are not exhaustive, other nodes could still be parallelized
in the future. Also, it would be possible to further optimize the grain
size in `parallel_for`, but I'd rather make sure it isn't too small.
I tested some different values, but also relied on intuition--
increasing grain size for less complex operations and vice versa.

Differential Revision: https://developer.blender.org/D11139
May 3, 2021, 11:03 (GMT)
Merge branch 'blender-v2.93-release'
May 3, 2021, 11:02 (GMT)
LibOverride: temporarily fix the material driver workaround with a hack.

Currently overriding properties within material node trees is not
supported. However there is a workaround that allows feeding values
through drivers via an intermediate custom property, as described
in T82404. The workaround relies on the behavior of the ID copying
code that always patches datablock self-references even without any
overrides.

Unfortunately, this broke during development of 2.93. This happened
because a call RNA_struct_override_matches added in rB2281db72b0157
detects that no override exists, and 'restores' the self-reference
to point to the original datablock.

To avoid this, mark the Material.node_tree property with the
PROPOVERRIDE_IGNORE flag to stop RNA_struct_override_matches
from recursing into the currently unsupported node tree sub-block.
This flag should be removed when this is properly supported.

This was confirmed to fix the workaround and discussed with @mont29.
May 3, 2021, 10:22 (GMT)
Minor updates to i18n spellcheck tool.
May 3, 2021, 08:23 (GMT)
Cleanup: clang-tidy
May 3, 2021, 08:22 (GMT)
Cleanup: clang-tidy
May 3, 2021, 02:42 (GMT)
Cleanup: format
May 2, 2021, 23:21 (GMT)
Cycles: use reference count to detect used shaders

Shaders are only compiled if they are used by some other Node (Geometry, Light, etc.).
This usage detection is done before updating the Scene, however it fails at detecting
Shaders used by Procedurals not known to Cycles (e.g. ones defined by third party
applications), as Procedurals are only updated after the shaders are compiled.

To remedy this, we now use the Node reference counting mechanism to detect whether a
Shader is used and therefore should be compiled.

This removes `ShaderManager::update_shaders_used` as it is not needed anymore, however,
since it would also update the Shader ids, this is now performed in
`ShaderManager::device_update`, and a new virtual `device_update_specific` method was
added to handle device updates for SVM and OSL.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D10965
May 2, 2021, 23:20 (GMT)
Cycles: add reference counting to Nodes

This adds a reference count to Nodes which is incremented or decremented
whenever they are added to or removed from a socket, which will help us
track used Nodes throughout the scene graph generically without having to
add an explicit count or flag on specific Node types. This is especially
useful to track Nodes defined through Procedurals out of Cycles' control.

This also modifies the order in which nodes are deleted to ensure that
upon deletion, a Node does not attempt to decrement the reference
count of another Node which was already freed or deleted.

This is not currently used, but will be in the next commit.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D10965
May 2, 2021, 20:40 (GMT)
Merge branch 'blender-v2.93-release'
May 2, 2021, 20:37 (GMT)
Fix T87554 Exact Boolean performance bug.

There was a quadratic algorithm extracting triangles from a coplanar
cluster. This is now linear.
Also found and fixed a bug in the same area related to the triangulator
added recently: it didn't get the right correspondence between new
edges and original edges.
May 2, 2021, 13:56 (GMT)
Merge branch 'blender-v2.93-release'
May 2, 2021, 13:51 (GMT)
GPencil: Fix unreported problem when save file in Curve Edit mode

This is related to T87905
May 2, 2021, 09:20 (GMT)
Merge branch 'blender-v2.93-release'
May 2, 2021, 09:13 (GMT)
Fix T82824: Draw sensor size with correct alpha

Previously the option in the camera's //Object Data Properties > Viewport Display
> Sensor// would not display the sensor in camera view. This seemed to be caused
by the theme color `TH_VIEW_OVERLAY` having zero set for the alpha channel and
alpha blending being active, resulting in no visible output. Hence
`immUniformThemeColorShade(TH_VIEW_OVERLAY, 100);` is replaced with
`immUniformThemeColorShadeAlpha(TH_VIEW_OVERLAY, 100, 255);`.

Reviewed By: mano-wii

Differential Revision: https://developer.blender.org/D11075
May 1, 2021, 16:15 (GMT)
UI: Object Thumbnails Orientation Change

Object orientation for thumbnail creation changed to be slightly
oblique (tilted to one side and from above) to better show shape,
especially when axis-aligned. Camera lens changed to 85 to avoid
distortion of close objects like human heads.

see D9940 for details and examples.

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

Reviewed by Julian Eisel
May 1, 2021, 15:23 (GMT)
Merge branch 'blender-v2.93-release'
May 1, 2021, 15:22 (GMT)
Fix T87905: GPencil modifiers not applied if saved with multiframe

When saving a file in Edit mode with Multiframe enabled, the render did not include the modifiers.

Now the multiframe is not enabled if it's doing a render.
May 1, 2021, 15:12 (GMT)
Python GPU: Replace a few calls of the bgl module with gpu

Concludes these files:
[x]bpy_types.py
[x]operator_modal_draw.py

Reviewed By: fclem

Differential Revision: https://developer.blender.org/D11129
May 1, 2021, 14:41 (GMT)
GPencil: Auto lock layers, tooltip grammar fix

Reviewed By: #grease_pencil, antoniov

Differential Revision: https://developer.blender.org/D11136
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021