Revision 05f900e by Hans Goudey December 23, 2021, 17:30 (GMT) |
Cleanup: Remove unused UI button definition functions These were part of the older buttons API that shouldn't be used in more places at this point. Most layouts should be built with the regular layout system API and RNA properties. This sort of button can still be created though, since these were just shortcuts anyway. |
Revision 43f5e76 by Kévin Dietrich December 23, 2021, 17:05 (GMT) |
Cache File: use panels to organize UI This adds interface panels to organize the Cache File UI parameters for modifiers and constraints into related components: velocity, time, and render procedural. Properties relating to the three aforementioned components are separated from `uiTemplateCacheFile` into their own functions (e.g. `uiTemplateCacheFileVelocity` for the velocity one), which are in turn called from the specific panel creation routines of the modifiers and constraints (for constraints, the functions are exposed to the RNA). `uiTemplateCacheFile` now only shows the properties for the file path, and in the case of constraints, the scale property. The properties that are only defined per modifier (like the velocity scale), are shown in the proper modifier layout panel if applicable. Reviewed By: sybren Differential Revision: https://developer.blender.org/D13652 |
Revision 7a71a95 by Christoph Lendenfeld December 23, 2021, 13:31 (GMT) |
Graph Slider Ops: Show error when no valid keys are found When using graph slider operators like D9374 it showed a warning when no keys were selected. However since that stops the modal operation it should be an Error. Also the message was misleading since it could error for different reasons than stated. Reviewed by: Sybren A. St�vel Differential Revision: https://developer.blender.org/D13655 Ref: D13655 |
Revision d71009d by Sybren A. Stüvel December 23, 2021, 13:10 (GMT) |
Avoid exception when no weight paint settings exist Just an extra check for `None` before accessing its properties. |
Revision 025c921 by Sybren A. Stüvel December 23, 2021, 12:49 (GMT) |
Cleanup: remove BKE_animdata_driver_path_hack The `BKE_animdata_driver_path_hack()` function has had almost no effect since rB51b796ff1528, and basically boils down to: ``` return base_path ? base_path : RNA_path_from_ID_to_property(ptr, prop); ``` Since `base_path` was `NULL` in the majority of cases, it's just been replaced by a direct call to `RNA_path_from_ID_to_property()`. The conditional now just appears in one remaining case. This relates to T91387. Reviewed By: mont29 Differential Revision: https://developer.blender.org/D13646 |
Revision 00965c9 by Bastien Montagne December 23, 2021, 09:13 (GMT) |
LibOverride: protect better against using on complex inter-dependency cases. Do not allow 3DView operator to run on the liboverride of an instantiating Empty object. And tweak behavior in the Outliner operations too. Related to T94226. Note that this remains fairly exotic, bad idea not recommended cases, such complex inter-dependencies between different libraries inside a same liboverride hierarchy is just not possible to handle properly. |
Revision 710e279 by Kévin Dietrich December 23, 2021, 07:01 (GMT) |
Fix missing type declaration compile error rBbd3bd776c893 broke compilation here due to missing type declaration for basic types as the source file is not including this header. In any case, it is the responsibility of header files to include headers for types used by value in function parameters or struct definitions. |
Revision 41f3164 by Kévin Dietrich December 23, 2021, 06:53 (GMT) |
Cleanup: typo in comment |
Revision 1931387 by Hans Goudey December 23, 2021, 00:38 (GMT) |
Fix: Curve trim node test failure Caused by 60c59d7d611dfd726. The position wasn't copied into the correct place on each spline. Somehow I didn't catch that in the tests I ran. |
Revision 8f89196 by Hans Goudey December 23, 2021, 00:15 (GMT) |
Fix T94232: No selection with set material node empty material list If the input mesh had no materials already, the new material would become the only material on the mesh, meaning the material was added to all of the faces, instead of just the selected faces. The mesh primitive nodes in geometry nodes already add an empty slot by default, so this only affects outside geometry. The fix is just adding an empty slot before the new slot, so the non-selected material indices can still point to an empty slot. Differential Revision: https://developer.blender.org/D13654 |
Revision 60c59d7 by Hans Goudey December 22, 2021, 23:39 (GMT) |
Cleanup: Remove spline add_point method, refactor mesh to curve node It's better to calculate the size of a spline before creating it, and this should simplify refactoring to a data structure that stores all point attribute contiguously (see T94193). The mesh to curve conversion is simplified slightly now, it creates the curve output after gathering all of the result vertex indices. This should be more efficient too, since it only grows an index vector for each spline, not a whole spline. |
Revision c593db5 by Hans Goudey December 22, 2021, 23:22 (GMT) |
Nodes: Add link drag search support for map range node Previously only the float version of the node was connected to. This adds connection operations for vector sockets, and exposes the "Steps" socket properly when it's selected. |
Revision 6b662eb by Hans Goudey December 22, 2021, 23:18 (GMT) |
Cleanup: Return early |
Revision 9033d27 by Hans Goudey December 22, 2021, 23:13 (GMT) |
Fix: Extra space at the front of "Sample Curve" node name |
Revision dca5be9 by Hans Goudey December 22, 2021, 22:45 (GMT) |
Fix: Wrong node link drag search menu items for attribute statistic Caused by capturing local variables by reference in a function that outlives the scope it was created in. Also use a more generic function for the first two inputs. |
Revision 14621e7 by Hans Goudey December 22, 2021, 22:29 (GMT) |
Fix: Potential use after scope in curve to mesh node I don't think this has been visible, since I only ran into it after changing other code that affected this. However, some attributes can keep a reference to the source component to use when tagging caches dirty (like the position attribute tagging the normals dirty). Here, the component was created inside a function, then the attributes were used afterwards. Also add some comments warning about this in the header file. |
December 22, 2021, 20:49 (GMT) |
Fix: Large stack allocation in compositor When COM_EXPORT_GRAPHVIZ is enabled, DebugInfo::graphviz uses a char[1000000] as local variable. When this function is called this is allocated on the stack, which has a size of just 1MB on mac and may cause a stack overflow. This patch allocates the memory on the heap and frees the memory at the end of the function. Reviewed By: LazyDodo Differential Revision: https://developer.blender.org/D13628 |
Revision 0fd72a9 by Hans Goudey December 22, 2021, 20:35 (GMT) |
Cleanup: Avoid adding points to splines sequentially This should be faster because it avoids reallocating the internal vectors when the size is known beforehand, but it may also help a potential refactor to a different data structure (see T94193). |
Revision b4f978e by Hans Goudey December 22, 2021, 20:00 (GMT) |
Fix: Missing update when toggling node mute Toggling node mute doesn't cause node trees to reevaluate after rB7e712b2d6a0d257. Toggling a link mute still works though. To fix this, the operator tags the node and node with a new update tag function (that uses an existing tag internally). Differential Revision: https://developer.blender.org/D13653 |
Revision 586e2fa by Germano Cavalcante December 22, 2021, 19:11 (GMT) |
Fix T93408: Snap performance regression at high poll rate Caused by {rBfba9cd019f21f29bad1a6f3713370c5172dbc97f}. The snap timer was accidentally modified and damaged. |
|