Revision 9172182 by Germano Cavalcante November 16, 2021, 16:59 (GMT) |
Merge branch 'blender-v3.0-release' |
Revision 1572c4d by Germano Cavalcante November 16, 2021, 16:56 (GMT) |
Fix T93011: Individual origins being used when pivot point is override There should be a special `t->around` for this case, but for now let's just avoid having the individual origins overlap. |
Revision bd37553 by Germano Cavalcante November 16, 2021, 16:55 (GMT) |
Cleanup: better delimit member initialization The initialization of `t->around` and `t->view` was scattered and with duplicate code |
Revision 0335df9 by Germano Cavalcante November 16, 2021, 16:39 (GMT) |
Transform: better contextualize the status bar `Remove Last Snap Point` should only be displayed when there is a Snap Point to be removed. |
Revision ba6427a by Sergey Sharybin November 16, 2021, 16:25 (GMT) |
Merge branch 'blender-v3.0-release' |
Revision b3529ec by Sergey Sharybin November 16, 2021, 16:25 (GMT) |
Fix CUDA error when using tiny border in viewport Need to clamp scaled render buffers window to be above zero when applying resolution divider. |
Revision 72ee62e by Sybren A. Stüvel November 16, 2021, 16:18 (GMT) |
Fix crash on freeing hair system Fix a crash when a hair system's `ParticleSettings` ID datablock was linked from another file but couldn't be found. This results in default settings, with `type = PART_EMITTER`, where the particle data still has a non-NULL `hair` pointer. Previously, copies of such a particle system would NOT copy hair data for non-hair particle systems, hence the pointer of the copy pointed to the original data, which got freed (at least) twice upon closing the blend file. This is now fixed by always copying the hair data, regardless of the particle system type. Reviewed by: mont29 Differential Revision: https://developer.blender.org/D13245 |
Revision bee7a56 by Sybren A. Stüvel November 16, 2021, 16:11 (GMT) |
Cleanup: document that `MEM_dupallocN` is NULL-safe Add comment explaining `MEM_dupallocN` is NULL-safe, in that it returns NULL when it receives a NULL pointer. This is currently true for both implementations of the function (`MEM_lockfree_dupallocN` and `MEM_guarded_dupallocN`), and will be expected of other implementations as well. No functional changes. |
Revision 07af45e by Sybren A. Stüvel November 16, 2021, 15:49 (GMT) |
Asset Browser: hide catalog debug info behind debug option Add a new "experimental" debug option `show_asset_debug_info`, and use that to determine the visibility of the active asset's catalog UUID and simple name. Previously this was only determined by the "Developer Extras" option, which meant it was visible in too many situations. It's not really a "developer extra", and really just a debugging tool, so the new option is more in line with its purpose. Reviewed by: Severin Differential Revision: https://developer.blender.org/D13242 |
Revision 64003fa by Michael Jones / Michael Jones November 16, 2021, 13:42 (GMT) |
Cycles: Adapt volumetric lambda functions to work on MSL This patch adapts the existing volumetric read/write lambda functions for Metal. Lambda expressions are not supported on MSL, so two new macros `VOLUME_READ_LAMBDA` and `VOLUME_WRITE_LAMBDA` have been defined with a default implementation which, on Metal, is overridden to use inline function objects. This patch also removes the last remaining mention of the now-unused `ccl_addr_space`. Ref T92212 Reviewed By: leesonw Maniphest Tasks: T92212 Differential Revision: https://developer.blender.org/D13234 |
Revision 85ac9b8 by Julian Eisel November 16, 2021, 13:39 (GMT) |
Merge branch 'blender-v3.0-release' |
Revision ce0d817 by Julian Eisel November 16, 2021, 13:37 (GMT) |
UI: Fix hard to read text for drag disabled hints In 499dbb626acb, the background color of drag tooltips were changed so text becomes more readable. But multiple people were touching the same code, so the disabled hint tooltips didn't get the same tweak. They would benefit from them even more, since the red text is even harder to read on the transparent background than the regular, white text. |
Revision 12a986c by Sybren A. Stüvel November 16, 2021, 12:10 (GMT) |
Merge remote-tracking branch 'origin/blender-v3.0-release' |
Revision c7a1e11 by Sybren A. Stüvel November 16, 2021, 12:07 (GMT) |
Tests: fix memory leak of GHOST system paths Dispose of GHOST system paths when tearing down `BlendfileLoadingBaseTest` and some other test cases. This prevents a memory leak. A better solution would be to rework Blender's initialisation & teardown structure, but that's outside the scope of this fix. No functional changes to Blender. |
Revision faa8aa3 by Julian Eisel November 16, 2021, 12:01 (GMT) |
Asset Browser: Forbid dragging catalogs into themselves While there is nothing technically that would cause issues when moving a catalog into itself (it just changes the path of the catalog, and the missing parent catalogs will be created), it seems broken to the user. So disable this in the drag & drop code for asset catalogs. |
Revision 052c221 by Sybren A. Stüvel November 16, 2021, 11:35 (GMT) |
Asset Browser: use one more refresh operator Refreshing the assets requires `file_OT_asset_library_refresh` in the asset browser, and `asset_OT_list_refresh` for the asset view. Both are now done from `ASSET_OT_open_containing_blend_file`. |
Revision 7da714f by Philipp Oeser November 16, 2021, 09:57 (GMT) |
Merge branch 'blender-v3.0-release' |
November 16, 2021, 09:45 (GMT) |
Fix T90866: Python operator templates are not accessible from menus Python Operator templates made accessible from respective menus (required to also use F3 search for quick access) Also fixed Modal Draw Operator id_name (had duplicate name from other template) Maniphest Tasks: T90866 Differential Revision: https://developer.blender.org/D13182 |
Revision d4c868d by Jacques Lucke November 16, 2021, 09:16 (GMT) |
Geometry Nodes: refactor virtual array system Goals of this refactor: * Simplify creating virtual arrays. * Simplify passing virtual arrays around. * Simplify converting between typed and generic virtual arrays. * Reduce memory allocations. As a quick reminder, a virtual arrays is a data structure that behaves like an array (i.e. it can be accessed using an index). However, it may not actually be stored as array internally. The two most important implementations of virtual arrays are those that correspond to an actual plain array and those that have the same value for every index. However, many more implementations exist for various reasons (interfacing with legacy attributes, unified iterator over all points in multiple splines, ...). With this refactor the core types (`VArray`, `GVArray`, `VMutableArray` and `GVMutableArray`) can be used like "normal values". They typically live on the stack. Before, they were usually inside a `std::unique_ptr`. This makes passing them around much easier. Creation of new virtual arrays is also much simpler now due to some constructors. Memory allocations are reduced by making use of small object optimization inside the core types. Previously, `VArray` was a class with virtual methods that had to be overridden to change the behavior of a the virtual array. Now,`VArray` has a fixed size and has no virtual methods. Instead it contains a `VArrayImpl` that is similar to the old `VArray`. `VArrayImpl` should rarely ever be used directly, unless a new virtual array implementation is added. To support the small object optimization for many `VArrayImpl` classes, a new `blender::Any` type is added. It is similar to `std::any` with two additional features. It has an adjustable inline buffer size and alignment. The inline buffer size of `std::any` can't be relied on and is usually too small for our use case here. Furthermore, `blender::Any` can store additional user-defined type information without increasing the stack size. Differential Revision: https://developer.blender.org/D12986 |
Revision 6d35972 by Philipp Oeser November 16, 2021, 08:58 (GMT) |
Merge branch 'blender-v3.0-release' |
|