Revision 88f33af by Howard Trickey / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Greatly improve speed of Delaunay when have a lot of holes. Using part of a patch from Erik Abrahamsson, this replaces the use of linked lists for original id tracking by Sets. I had thought that the lists were unlikely to grow to more than a few elements, but when the mesh has a lot of holes (whose original ids go *outside* the hole, and therefore, most of the mesh), this assumption can be very wrong. On a Text regression test, the time went from 11.67s to 0.16s with this fix. I also tested to make sure that Boolean didn't slow down with this, and found it actually had a very slight speedup. Using Sets exposed a dependency on the ordering of the items in the id lists, luckily caught by a mesh intersect regression test, so fixed that. |
Revision f0a98f1 by Angus Stanton / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Fix: Incorrect logic in spline lookup function This section of code deals with evaluated points, so that is the size it should use. |
Revision 2b3f1fe by Alexander Gavrilov / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Versioning: fix vertex group name loss in linked duplicates. After rB3b6ee8cee708 by @HooglyBoogly vertex groups were moved to mesh data, and versioning code was provided to upgrade old files. However, it fails to consider the case of linked duplicates having different name lists, and dependent on the object order can cause some of the names to be lost. This can even be all of them, if there is a duplicate without any names, which can be easily created by lazy Python code. To fix this, change the code to use the longest available name list. Differential Revision: https://developer.blender.org/D11958 |
Revision 8725fc5 by Erik Abrahamsson / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Speed up Delaunay raycast. From Erik Abrahamsson, this uses parallel loops for raycasting. It speeds up one example with many crossings of a bezier curve, from 0.68s to 0.28s. |
Revision 38dd4ac by Campbell Barton / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Cleanup: remove redundant parentheses |
Revision b3602ac by Campbell Barton / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Cleanup: sort struct declarations |
Revision 1caf30a by Campbell Barton / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) 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. |
Revision 105850b by Campbell Barton / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Cleanup: reduce variable scope in task_iterator.c Would have prevented the error in 15cdcb4e9085c3cf35528c2f7e559955b4ff531a. |
Revision 7a29a37 by Campbell Barton / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Revision 30f431a by Campbell Barton / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Fix T89861: Checking face selection breaks UV stitch operator |
Revision 58e2f62 by Dalai Felinto / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Rename UI error message on attributes panel for name collisions * Name Collisions > Name collisions * Info icon > Error icon |
Revision 233862e by Sybren A. Stüvel / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) 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. |
Revision 9a58acb by Germano Cavalcante / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) 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 |
Revision 5c7968a by Germano Cavalcante / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) 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. |
Revision e2ffe9d by Alexander Gavrilov / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) 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 |
Revision 8d79fe2 by Hans Goudey / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) 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. |
Revision c155315 by Hans Goudey / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 30, 2021, 14:51 (GMT) |
Cleanup: Get vertex group names directly from grease pencil data |
Revision 0415578 by Hans Goudey / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) 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 |
Revision 956e41d by Hans Goudey / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) 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 |
Revision c1bd9ec by Aidan Haile / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) 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 |
|
|
|


Master Commits
MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021