Blender Git Loki

Blender Git "soc-2021-porting-modifiers-to-nodes-decimate" branch commits.

Page: 14 / 18

July 30, 2021, 14:51 (GMT)
Fix T89899: Crashes when accessing vertex groups from objects

We need to be more strict about trying to retrieve a list of vertex group
names from objects now, as only three object types support them.
This commit adds a check for vertex group support in a few places, the
data transfer operator/modifier, copying vertex groups to selected
objects, and the vertex group remove and clear functions.

Differential Revision: https://developer.blender.org/D11947
July 30, 2021, 14:51 (GMT)
Cleanup: reduce variable scope in task_iterator.c

Would have prevented the error in
15cdcb4e9085c3cf35528c2f7e559955b4ff531a.
July 30, 2021, 14:51 (GMT)
Fix error using uninitialized state in BLI_task_parallel_mempool

Single threaded operation used the state before it had variables
written into it.

Error in 15cdcb4e9085c3cf35528c2f7e559955b4ff531a.
July 30, 2021, 14:51 (GMT)
Cleanup: preview rendering, update assumptions in comment

The `action_preview_render()` function used to just render, but now it
also temporarily applies the pose. Its comment is now updated for this.

No functional changes.
July 30, 2021, 14:51 (GMT)
Fix T89861: Checking face selection breaks UV stitch operator
July 30, 2021, 14:51 (GMT)
Cleanup: remove redundant parentheses
July 30, 2021, 14:51 (GMT)
Rename UI error message on attributes panel for name collisions

* Name Collisions > Name collisions
* Info icon > Error icon
July 30, 2021, 14:51 (GMT)
Fix T89875: False dependency cycle on particle systems

`POINT_CACHE_RESET` pointed to `GEOMETRY_EVAL_INIT` while
`GEOMETRY_EVAL_INIT` pointed to `POINT_CACHE_RESET`.

Now `POINT_CACHE_RESET` points to the same nodes pointed to by
`GEOMETRY_EVAL_INIT` thus avoiding the dependency cycle.
July 30, 2021, 14:51 (GMT)
Fix T70356: Scaling up 1x1 pixel image reads past buffer bounds

Also resolve a crash when when displaying thumbnails, see T89868.
July 30, 2021, 14:51 (GMT)
Cleanup: Remove redundant logic

The object type was checked twice unnecessarily. Also use a function
for the check to be more explicit.
July 30, 2021, 14:51 (GMT)
Cleanup: Move gpencil_geom.c to C++

This will help enable development on optimizations to the perimeter
calculation here. Using C++ data structures like Array can make the
code easier to read as well.

Longer term, this can help improve integration with attributes
and possibly the new curve code (since strokes and curves are
quite similar in theory).

Differential Revision: https://developer.blender.org/D11941
July 30, 2021, 14:51 (GMT)
Fix T89782: Segfault populating popup menu with dimensions above the opengl limit

The crash happens because `GPU_offscreen_create` is called with `err_out` `NULL`.

This patch proposes a solution within the `GPU_offscreen_create` itself
and raises an error report in the interface if a menu is called with
dimensions beyond what is supported.

Ref T89782

Maniphest Tasks: T89782

Differential Revision: https://developer.blender.org/D11927
July 30, 2021, 14:51 (GMT)
Cleanup: sort struct declarations
July 30, 2021, 14:51 (GMT)
Cleanup: Get vertex group names directly from grease pencil data
July 30, 2021, 14:51 (GMT)
Surface Deform: support sparse binding mode for improving performance.

When a vertex group is used to limit the influence of the modifier
to a subset of vertices, binding data for vertices with zero weight
is not needed. This wastes memory, disk space and CPU cycles.

If the vertex group contents is known to be final and constant,
it is reasonable to optimize by only storing data group vertices.
This has to be an option in case the group can change.

Supporting this requires adding a vertex index field and spliting
the vertex count into mesh and bind variants, but both happen to
fit in available padding. The old numverts field is renamed to the
new bound vertex count field to maintain the array length invariant.
Versioning is used to initialize the other new fields.

If a file with sparse binding is opened in an old blender version,
it is corrupted into a non-sparse bind with vertex count mismatch,
preventing the modifier from working until rebind.

Differential Revision: https://developer.blender.org/D11924
July 30, 2021, 14:51 (GMT)
Cleanup: compiler warnings
July 30, 2021, 14:51 (GMT)
Cleanup: spelling in comments
July 30, 2021, 14:51 (GMT)
Fix T49944: Compositor ID Mask Anti-Aliasing not working

Replaces current ID Mask node Anti-Aliasing operation by SMAA
operations with default settings as proposed by Jeroen Bakker.
SMAA produces smoother edges.

Reviewed By: manzanilla

Differential Revision: https://developer.blender.org/D11881
July 30, 2021, 14:51 (GMT)
Animation/add-ons: Enable the poselib add-on by default

The new Asset Browser-based pose library is partially implemented in an
add-on. This commit enables the add-on by default, as the old pose
library was built-in and thus always enabled.

The ability to disable the add-on is there mostly for cases where
people/studios want to use their own custom pose library.
July 30, 2021, 14:51 (GMT)
Cleanup: Move UI list template code to own file (C++)

This move was already prepared with 788d38046032 and 26b098c04fbe. The
template is quite big already, better to give it its own file. Plus it
could use some C++ features like RAII and maybe some more object
oriented code. I plan further refactoring there.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021