Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
AgeCommit message (Collapse)Author
2022-03-16Fix T96518: Gpencil Fill freezes when use invert and click inside areasAntonio Vazquez
When using inverted filling and click inside a closed area and not outside as is expected, the algorithm to detect the contour to fill is unable to find the filling shape and try to fill outside of the valid index. The infinite loop was adding more memory for each loop and the process continued while there was system resources and finally crashed the system. As the tool in negative mode is designed to fill all areas when you click outside of any shape, now the algorithm check if the outline is not working as expected and cancels the filling process.
2022-03-16Geometry Nodes: Remove legacy node codeHans Goudey
This commit removes the implementations of legacy nodes, their type definitions, and related code that becomes unused. Now that we have two releases that included the legacy nodes, there is not much reason to include them still. Removing the code means refactoring will be easier, and old code doesn't have to be tested and maintained. After this commit, the legacy nodes will be undefined in the UI, so 3.0 or 3.1 should be used to convert files to the fields system. The net change is 12184 lines removed! The tooltip for legacy nodes mentioned that we would remove them before 4.0, which was purposefully a bit vague to allow us this flexibility. In a poll in a devtalk post showed that the majority of people were okay with removing the nodes. https://devtalk.blender.org/t/geometry-nodes-backward-compatibility-poll/20199 Differential Revision: https://developer.blender.org/D14353
2022-03-16Fix T96512: Crash selecting an edgeCampbell Barton
Regression in 5e5285baf621.
2022-03-16Document some flags controlling BKE_library_foreach_ID_link behavior.Bastien Montagne
2022-03-16Cleanup: Deprecated field access in outliner_duplicateSergey Sharybin
Solved by introducing introducing a variant of MEM_cnew which behaves as a copy-constructor for a trivial types. Alternative approach would be to surround DNA structs with clang/gcc diagnostics push/modify/pop so that implicitly defined constructors and copy operators are allowed to access deprecated fields. The downside of the DNA approach is that it will require some way to easily apply diagnostics modifications to many structs, which is not possible currently. The newly added MEM_cnew has other good usecases, so is easiest to use this route, at least for now. Differential Revision: https://developer.blender.org/D14356
2022-03-16Cleanup: Remove use of deprecated std::iterator in FreestyleSergey Sharybin
Resolves a fair amount of noisy warnings with default build on macOS. Tested using render_layer render test which includes Freestyle layer. Differential Revision: https://developer.blender.org/D14355
2022-03-16Fix error with pose & deselect_all with 5e5285baf621a0c225cb5fc06fceCampbell Barton
2022-03-16Fix T96386: crash when changing shader to node group in propertiesJacques Lucke
The previous code updated the wrong node tree. The result was that the new group node did not have the socket that was supposed to be linked.
2022-03-16View 3D: refactor edit-mode meta-element selectionCampbell Barton
Meta-element selection now follows conventions for other picking functions (e.g. EDBM_select_pick). - Split meta-element find-nearest into a separate function. - Cycle the meta-element starting from the active & selected instead of comparing & setting a static variable. - Order elements using depth (from front-to-back) when cycling multiple elements.
2022-03-16Fix object centers & geometry selecting meta-elements in edit-modeCampbell Barton
2022-03-16Cleanup: de-duplicate struct declarationCampbell Barton
Also use boolean instead of int.
2022-03-16Cleanup: incorrect comments, use C commentsCampbell Barton
2022-03-16Cleanup: Remove volatile from RenderResult and related APIsJesse Yurkovich
Volatile fields were introduced to the RenderResult struct years ago[1]. However, volatile is most likely not doing what it was intended to do in this instance, and is problematic when moving files to c++ (see discussion from D13962). There are complex rules around what happens to these fields but none of them guarantee what the above commit alluded to. This patch drops the volatile and cleans up the APIs surrounding it. [1] rB7930c40051ef1b1a26140629cf1299aa89eed859 Passing on all platforms: https://builder.blender.org/admin/#/builders/18/builds/338 Differential Revision: https://developer.blender.org/D14298
2022-03-16Cleanup: rename variables in view3d_select_execCampbell Barton
- Rename 'location' to 'mval', typically used for region cursor coords. - Rename 'retval' to 'changed', typically used for operators when their return value depends on a change being made.
2022-03-16View 3D: move picking arguments into a struct & minor refactorCampbell Barton
- Add SelectPick_Params struct to make picking logic more straightforward and easier to extend. - Use `eSelectOp` instead of booleans (extend, deselect, toggle) which were used to represent 4 states (which wasn't obvious). - Handle deselect_all when pocking instead of view3d_select_exec, de-duplicate de-selection which was already needed in when replacing the selection in picking functions. - Handle outliner update & notifiers in the picking functions instead of view3d_select_exec. - Fix particle select deselect_all option which did nothing.
2022-03-16Fix missing update selecting 3D text-boxCampbell Barton
2022-03-16Cleanup: rename cnt to countCampbell Barton
Follow naming from T85728.
2022-03-16Curves: Port count spline length output to new data-blockHans Goudey
This fixes T96487 in a similar way to 5791835678067b56, and also removes the conversion to old curve type for the "Point Count" output.
2022-03-15Outliner: Display buttons to edit library override propertiesJulian Eisel
As proposed in T95802, this adds buttons to a new column on the right to modify the override in the Library Override display mode. Some further usability improvements are planned. E.g. this does not yet expand collections (modifiers, constraints, etc) nicely or group modified properties of a modifier together. Vector properties with more than 3 items or matrices aren't displayed nicely yet, they are just squeezed into the column. If this actually becomes a problem there are some ideas to address this. Differential Revision: https://developer.blender.org/D14268
2022-03-15Fix T96263: command line rendering affected by current scene subframeBrecht Van Lommel
2022-03-15Disable GPU subdivision if the maximum number of SSBO binding is reachedKévin Dietrich
Some old platforms and drivers have limited amount of SSBO binding per compute shader. This disables GPU subdivision if we cannot possibly bind all required buffers within this limit. For now the maximum number of buffers used by the GPU code is hardcoded, but will be programmatically detected when shader creation is automated. Ref D14337
2022-03-15GPU capabilities: detect max SSBO bindingsKévin Dietrich
This adds detection of the maximum number of shader storage buffer bindings that is supported on the current platform. This can be useful to turn off features that require compute shaders but use more buffer bindings than available. Differential Revision: https://developer.blender.org/D14337
2022-03-15Fix slow tracking of long sequencesSergey Sharybin
The performance issue was noticeable when tracking a lot of tracks which are using keyframe pattern matching. What was happening is that at some cache gets filled in and the furthest away frame gets removed from the cache: the frame at marker's keyframe gets removed and needs to be re-read from disk on the next tracking step. This change makes it so frames at markers' keyframes are not removed from cache during tracking. Steps to easily reproduce: - Set cache size to 512 Mb. - Open image sequence in clip editor - Detect features - Track all markers Originally was reported by Rik, thanks!
2022-03-15Fix T96452: Armature corrupted after undoing 'Join' operation.Bastien Montagne
Modified source Armature ID in the join operation was not properly tagged as such for the depsgraph (and therefore memfile undo).. Issue caused/revealed by rBe648e388874a. Should be backported to 3.1 should we make a corrective release.
2022-03-15Cleanup: remove redundant 'extern StructRNA' declarationsGermano Cavalcante
After rB9b298cf3dbec, the `StructRNA` declarations can now be accessed via `RNA prototypes.h` Also, since all redundated declarations are now removed, `_WM_MESSAGE_EXTERN_BEGIN` and `_WM_MESSAGE_EXTERN_END` are also no longer needed. Differential Revision: https://developer.blender.org/D14342
2022-03-15Cleanup: Remove confusing double negation in RNA helper functionJulian Eisel
Much more readable that way.
2022-03-15Cleanup: remove accidental shallow mesh copyJacques Lucke
2022-03-15Fix T96357: Issue clicking on stem of arrow gizmos to scale on axisCampbell Barton
Caused by 0cb5eae9d0617abedf745753c23061ddfcfd1416 which restored support for 3D depth when selecting gizmos - making it difficult to select single lines drawn in front of other gizmos. Previously the first hit was always used. Resolve by using a margin around arrow stems when selecting which was already done for 2D arrows.
2022-03-15Cleanup: correct unbalanced doxy sectionsCampbell Barton
2022-03-15Docs: correct doc-string for BPY_driver_resetCampbell Barton
Remove outdated reference to "pydrivers.py", also document BPY_DECREF.
2022-03-15Cleanup: comments in bpy_driver.c, minor correctionsCampbell Barton
2022-03-15Cleanup: de-duplicate Py_DECREF when evaluating PyDriversCampbell Barton
2022-03-15Fix memory leak when there is an error evaluating a PyDriverCampbell Barton
In practice users are unlikely to ever run into this error.
2022-03-15UI: expose "Dolly View" in the menuCampbell Barton
This is mainly to expose the shortcut to make Dolly discoverable.
2022-03-14Fix gpu.types.GPUTexture not passing data buffer to 3D texturesIyad Ahmed
Missed in rB4430e8a00810ca8df2fa20029c4cb8078e8cdbe6 Reviewed By: mano-wii Differential Revision: https://developer.blender.org/D14333
2022-03-14Geometry Nodes: Add named attribute nodes behind experimental flagHans Goudey
This commit adds three nodes: - `Remove Attribute`: Removes an attribute with the given name - `Named Attribute`: A field input node - `Store Named Attribute`: Puts results of a field in a named attribute They are added behind a new experimental feature flag, because further development of attribute search and name dependency visualization will happen as separate steps. Ref T91742 Differential Revision: https://developer.blender.org/D12685
2022-03-14Auto-generate RNA-structs declarations in `RNA_prototypes.h`Julian Eisel
So far it was needed to declare a new RNA struct to `RNA_access.h` manually. Since 9b298cf3dbec we generate a `RNA_prototypes.h` for RNA property declarations. Now this also includes the RNA struct declarations, so they don't have to be added manually anymore. Differential Revision: https://developer.blender.org/D13862 Reviewed by: brecht, campbellbarton
2022-03-14Cleanup: Clang tidyHans Goudey
2022-03-14RNA: Generate property declerations header, solving msg-bus C++ incompatibilityJulian Eisel
Lets `makesrna` generate a `RNA_prototypes.h` header with declarations for all RNA properties. This can be included in regular source files when needing to reference RNA properties statically. This solves an issue on MSVC with adding such declarations in functions, like we used to do. See 800fc1736748. Removes any such declarations and the related FIXME comments. Reviewed By: campbellbarton, LazyDodo, brecht Differential Revision: https://developer.blender.org/D13837
2022-03-14Cleanup: Remove duplicate Bake modifier codeAntonio Vazquez
This patch remove all duplicate code for the same Bake modifier logic. Still some modifiers need custom bake functions and cannot use this generic bake.
2022-03-14Fix dead-lock in movie cacheSergey Sharybin
Steps to reproduce: - Add image sequence to movie clip editor. - Set cache limit to a low value in the user preferences. - Playback until old frames starts to be removed from cache. - Jump to the beginning of the image sequence. The reason of dead-lock comes from two factors: - Due to global nature of the cache limiter calls needs to be guarded with locks. - Image buffers stored in the cache can have their own cache (which is used for color management). Didn't find a better solution than to use recursive lock. Kind of makes sense since the thread-guardable resource is recursive (moviecache can have nested moviecaches). Differential Revision: https://developer.blender.org/D14331
2022-03-14Convert moviecache to C++Sergey Sharybin
2022-03-14Cleanup: Deduplicate code in Multiply modifierAntonio Vazquez
2022-03-14Cleanup: Make more obvious from the name that function is not publicSergey Sharybin
2022-03-14Revert "Animation: Sensible frame range for motion paths"Sybren A. Stüvel
This reverts commit 1558b270e9fcbc2e23fa248b0e7e770dddae155c. An earlier commit (rB101fadcf6b93c) introduced some new functionality, which was overlooked in reviewing this commit & got broken. Will re-commit after the issue has been fixed. Ref: D13687
2022-03-14GPencil: Fix offset modifier negative scale thicknessHenrik Dick
If the scale in the offset modifier was set to a value lower than -1, the object would get mirrored. The problem was, that the thickness was set to 0 by that. This fix makes the thickness calculation only use the absolute values. Differential Revision: http://developer.blender.org/D14324
2022-03-14Fix T96402: fix case when material output is contained in node groupJacques Lucke
For now just assume that a node group without output sockets is an output node. Ideally, we would use run-time information stored on the node group itself to determine if the group contains a top-level output node (e.g. Material Output). That can be implemented separately. In the larger scheme of things, top-level outputs within node groups seem to break the node group abstraction and reusability a bit.
2022-03-14Fix T96396: cannot set active node group output with PythonJacques Lucke
This is essentially the same fix as in rB22a341d9d8d3d337f79df228ab2e4e0726f81430.
2022-03-14Fix T96378: B-Bone selection fails in pose-modeCampbell Barton
Regression in 3267c91b4d5caab7da8aef071a446dd2e86f86a9.
2022-03-14WM: avoid hard coded modifier key checks in object.hide_collectionCampbell Barton
These checks aren't always valid when there are multiple events in the queue.