Blender Git Commits

Blender Git "master" branch commits.

Page: 10 / 5574

December 18, 2021, 04:53 (GMT)
Fix T94215: compositer denoise node UI wrongly shows as disabled

After recent refactoring in 4e98d974b596.
December 17, 2021, 23:55 (GMT)
GPU: add memory barriers for vertex and index buffers

This adds memory barriers to use with `GPU_memory_barrier` to ensure that
writes to a vertex or index buffer issued before the barrier are
completed after it, so they can be safely read later by another shader.

`GPU_BARRIER_VERTEX_ATTRIB_ARRAY` should be used for vertex buffers (`GPUVertBuf`),
and `GPU_BARRIER_ELEMENT_ARRAY` should be used for index buffers (`GPUIndexBuf`).

Reviewed By: fclem

Differential Revision: https://developer.blender.org/D13595
December 17, 2021, 22:43 (GMT)
Function to return a list of keyframe segments

Add a function that returns a list of keyframe segments
A segment being a continuous selection of keyframes
Will be used by future operators in the graph editor

Reviewed by: Sybren A. St�vel
Differential Revision: https://developer.blender.org/D13531
Ref: D13531
December 17, 2021, 22:13 (GMT)
Fix T94184: Outliner: Collection dragging tooltip is not updating

In the context of the dragdrop tooltip, the event referenced to the window
is out of date and contains invalid `mval` values.

Avoid using `win->eventstate` as much as possible.
December 17, 2021, 16:31 (GMT)
Fix T94116: Drivers can have multiple variables with same name

The RNA setter now ensures that driver variables are uniquely named
(within the scope of the driver).

Versioning code has been added to ensure this uniqueness. The last
variable with the non-unique name retains the original name; this
ensures that the driver will still evaluate to the same value as before
this fix.

This also introduces a new blenlib function `BLI_listbase_from_link()`,
which can be used to find the entire list from any item within the list.

Manifest Task: T94116

Reviewed By: mont29, JacquesLucke

Maniphest Tasks: T94116

Differential Revision: https://developer.blender.org/D13594
December 17, 2021, 15:47 (GMT)
Theme: Node Group color only needs RGB, not RGBA

The node group alpha theme was used for the overlay drawing in the node
editor. Since this was removed (919e513fa8f) the alpha channel doesn't
need to be exposed anymore.

Reported as part of T93654.
December 17, 2021, 15:40 (GMT)
Cleanup: Use signed integers in the weld modifier

The style guide mentions that unsigned integers shouldn't be used to
show that a value won't be negative. Many places don't follow this
properly yet. The modifier used to cast an array of `uint` to `int` in
order to pass it to `BLI_kdtree_3d_calc_duplicates_fast`. That is no
longer necessary.

Differential Revision: https://developer.blender.org/D13613
December 17, 2021, 14:46 (GMT)
Cleanup: quiet warning due to incompatible pointer types
December 17, 2021, 14:42 (GMT)
Allocator: simplify using guarded allocator in C++ code

Using the `MEM_*` API from C++ code was a bit annoying:
* When converting C to C++ code, one often has to add a type cast on
returned `void *`. That leads to having the same type name three times
in the same line. This patch reduces the amount to two and removes the
`sizeof(...)` from the line.
* The existing alternative of using `OBJECT_GUARDED_NEW` looks a out
of place compared to other allocation methods. Sometimes
`MEM_CXX_CLASS_ALLOC_FUNCS` can be used when structs are defined
in C++ code. It doesn't look great but it's definitely better. The downside
is that it makes the name of the allocation less useful. That's because
the same name is used for all allocations of a type, independend of
where it is allocated.

This patch introduces three new functions: `MEM_new`, `MEM_cnew` and
`MEM_delete`. These cover the majority of use cases (array allocation is
not covered).

The `OBJECT_GUARDED_*` macros are removed because they are not
needed anymore.

Differential Revision: https://developer.blender.org/D13502
December 17, 2021, 14:42 (GMT)
Cleanup: use new c++ guarded allocator api in some files
December 17, 2021, 14:21 (GMT)
UI: make Remap User dialog in outliner wider

The previous size was too small for common object names.

Differential Revision: https://developer.blender.org/D13604
December 17, 2021, 14:04 (GMT)
UI: Fix node socket alignment in some cases

The patch fixes some misalignments in the nodes' sockets/options
recently introduced in 26d2caee3ba0, while maintaining the original
fix for T92268.

The original fix made the top padding always of the same size; while
that works when the first row of the other node is `Socket | Socket`,
it doesn't for other more common cases, `like Socket | Node Option`,
where the text results misaligned.

Differential Revision: https://developer.blender.org/D13451
December 17, 2021, 13:59 (GMT)
Fix error in Cycles geometry update tagging after pointcloud addition

Thanks to Christophe Hery for spotting this.
December 17, 2021, 13:46 (GMT)
Fix T94142, T94182: Cycles metal broken after pointcloud changes

Missing ccl_private form an older patch.

Differential Revision: https://developer.blender.org/D13612
December 17, 2021, 13:38 (GMT)
Fix T94137: GPencil: Eraser does not erase first point

The eraser checks the current, previous and next point (and sets pc0,
pc1 & pc2 corresponding to that for futher occlusion/brush/clipping
checks). For the very first point, it sets pc0 to pc1 [which makes sense,
there is no previous point, so we should assume the previous segment is
"visible" as soon as the first point is], but does so *before* pc1 is
even calculated. This makes following occlusion/brush/clipping checks
work with zero values [which leads to no earsing in most cases].

Now *first* calculate pc1, *then* set pc0 to pc1.

Maniphest Tasks: T94137

Differential Revision: https://developer.blender.org/D13593
December 17, 2021, 12:58 (GMT)
Outliner ID Remap Users: hide ID type from the UI

The correct type should be set by invoke already, changing it to a non-
matching type (e.g. trying to remap Mesh users with a Camera block) does
not really make sense afaict, reason being that we would be presented
with the "Invalid old/new ID pair" message in such case anyways (code
checks GS(old_id->name) == GS(new_id->name)).

This alone wouldnt be a pressing issue, but since doing this with an
object ID type crashes atm., it seems to make sense to clean this up now
(of course the crash should be looked into, but this is for a separate
patch -- if that is solved, we could also think about adding the "Remap
Users" entry back in the context menu for objects as well [which was
removed in rB17bd5c9d4b1e for some reason]).

Part of T93799.

Differential Revision: https://developer.blender.org/D13512
December 17, 2021, 12:49 (GMT)
Fix (unreported): missed running versioning code in some files

The versioning code was accidentally put not at the very bottom.
That lead to a situation where it wasn't run on some files that happened
to be within a specific short time frame.

Since the versioning code is idempotent, it can just run again on existing
files. Therefore, this commit just moves it back to the bottom so that it
is executed on all files again.

Broken Commit: rB5b61737a8f41688699fd1d711a25b7cea86d1530.
December 17, 2021, 09:40 (GMT)
Fix T94166: set handle position node crashed after refactor

This was an oversight in rB8e2c9f2dd3118bfdb69ccf0ab2b9f968a854aae4.
December 17, 2021, 07:16 (GMT)
GPU: Sort SSBOs In Shader Interface.

SSBOs weren't sorted, but other types were. This was an
oversight when SSBOs were introduced (GPU compute pipeline).

Issue identified by @fclem.
December 17, 2021, 07:04 (GMT)
Cleanup: Silenced unused var warnings.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021