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
AgeCommit message (Collapse)Author
2021-04-30Cleanup: rename BKE_pose_channel_{verify => ensure}Campbell Barton
The term `verify` doesn't fit with what this function does and is sometimes used to check data is valid or to control validity checking as with `RNA_define_verify_sdna`. use more common term `ensure`.
2021-04-30Cleanup: rename BKE_pose_channels_hash_{make => ensure}Campbell Barton
Use the term `ensure` since it makes it clear the data is not manipulated if it already exists.
2021-04-30Cleanup: avoid ambiguous parenthesisCampbell Barton
2021-04-30Cleanup: remove redundant assignments & NULL pointer checkCampbell Barton
2021-04-30Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-30Cleanup: Mismatched array bounds in function declarationHans Goudey
2021-04-29Cleanup: Remove unecessary variableHans Goudey
The value of this variable was incremented, but never used.
2021-04-29Fix: crash when creating GPU texture from image failsBrecht Van Lommel
2021-04-29Gpencil Offset Modifier - Add randomize offset optionsCody Winchester
This patch adds the Randomize options that exist in the Array modifier to the offset modifier. Currently the patch uses ``` BLI_findindex(&gpf->strokes, gps); ``` to get the index of the current stroke for making each stroke a different seed value. This is how the noise modifier also gets the stroke seed value and it is noted there as well that this method is slow, and should be fixed in the future with another method of getting the stroke index. Other methods were explored such as using the total number of points of the stroke, but that makes the randomize options incompatible with other modifiers before it such as Multiple Strokes, Array, Build, and Simplify. {F9591325} Differential Revision: https://developer.blender.org/D10171
2021-04-29Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-29Fix T87592: Mirror fail with bisect, axis object & non-uniform scaleCampbell Barton
Bisect-plane calculation needed to take non-uniform scale into account.
2021-04-29Cleanup: unused variable, spellingCampbell Barton
2021-04-28Merge branch 'blender-v2.93-release'Falk David
2021-04-28Fix T87718: Fill triangles wrongly calculatedFalk David
The algorithm that calcualted the direction (inside/outside) of the polyline was not always returing the correct result. This mean that the polyline was filled "inside-out". The fix uses the winding number to calculate the inside and outside. Reviewed By: antoniov, pepeland Maniphest Tasks: T87718 Differential Revision: https://developer.blender.org/D11054
2021-04-28Cleanup: Fix inconcistent array lengths in function declarationsHans Goudey
In some cases functions were defined with arguments of different array lengths in headers vs. implementations. This commit fixes some of the cases I ran into, but probably not all of them.
2021-04-28Merge branch 'blender-v2.93-release'Jacques Lucke
2021-04-28Fix T87876: vertex groups missing when mesh is in edit modeJacques Lucke
Differential Revision: https://developer.blender.org/D11107
2021-04-28Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-28Fix T87631: Crash undoing edit-mode bone duplicationCampbell Barton
Edit mode could leave pose channels in the object that didn't have an associated bone. These are now cleared when freeing edit-mode data.
2021-04-27Geometry Nodes: initial Attribute Transfer nodeJacques Lucke
This is a first version of an Attribute Transfer node. It only supports two modes for mapping attributes from one geometry to another for now. More options are planned for the future. Ref T87421. Differential Revision: https://developer.blender.org/D11037
2021-04-27Merge branch 'blender-v2.93-release'Jacques Lucke
2021-04-27Fix T85889: recursive instances result in crashJacques Lucke
Generally, it would be good to not allow this from happening in the first place but that is quite tricky because an object does not know which other object instances it. Similar checks might be necessary in other places, but this fixes the bug already. Differential Revision: https://developer.blender.org/D11086
2021-04-26Cleanup: Move displist.cc to C++Hans Goudey
This is a change split from the geometry nodes curves branch. Since curve object modifier evaluation happens in this file, moving it to C++ will be quite helpful to support the `GeometrySet` type. Other than that, the code in the branch intends to replace a fair amount of this file anyway, so I don't plan to do any further cleanup here. Differential Revision: https://developer.blender.org/D11078
2021-04-26Cleanup: Replace modifyVolume with modifyGeometrySetHans Goudey
This allows us to remove a callback from the modifier type info struct. In the future the these modifiers might just be replaced by nodes internally anyway, but in the meantime it's nice to unify the handling of evaluated geometry a bit. Differential Revision: https://developer.blender.org/D11080
2021-04-26Merge branch 'blender-v2.93-release'Jacques Lucke
2021-04-26Depsgraph: support depending on collection geometryJacques Lucke
This fixes T87666 and T83252. The boolean modifier and geometry nodes can depend on the geometry of an entire collection. Before, the modifiers had to manually create relations to all the objects in the collection. This worked for the most part, but was cumbersome and did not solve all issues. For example, the modifiers were not properly updated when objects were added/removed from the referenced collection. This commit introduces the concept of "collection geometry" in the depsgraph. The geometry of a collection depends on the transforms and geometry of all the objects in it. The boolean modifier and geometry nodes can now just depend on the collection geometry instead of creating all the dependencies themselves. Differential Revision: https://developer.blender.org/D11053
2021-04-26Merge branch 'blender-v2.93-release'Hans Goudey
2021-04-26Fix (unreported): Geometry nodes instance ids not copied or clearedHans Goudey
Though to my knowledge we haven't had a report about this yet, this looks like a clear oversight-- the ids are just more data stored by the instances component, and should be cleared and copied like other data. This might have resulted in incorrect random IDs for instances in renderers in some cases where the component had to be copied.
2021-04-25Merge branch 'blender-v2.93-release'Antonio Vazquez
2021-04-25Fix unreported "Convert Mesh to Gpencil" when fill material already existsErik Abrahamsson
If an object named for example `Suzanne` is converted to Gpencil, a material called `Suzanne_Fill` will be created for the gpencil fill. When this material already exists, the new material will be called `Suzanne_Fill.001` and the operator will not see that this material is already present the next iteration. This leads to a new material being created for every polygon. This commit changes the code to search for a material starting with `ObjectName_Fill` instead of being equal to. Reviewed By: filedescriptor, antoniov Differential Revision: https://developer.blender.org/D11067
2021-04-23Merge branch 'blender-v2.93-release'Bastien Montagne
2021-04-23Fix bug/crash in ID bulk deletion code.Bastien Montagne
This is complex situation. Tagged ID deletion (used to delete several data-blocks at once) removes IDs to be deleted from Main. But when we remove deleted IDs' usages of other IDs (using `BKE_libblock_relink_ex`), some specific post-process is required on some types, like Collections. Those post-processes would in some cases rely on data actually being in Main. That failing condition would lead in existing code on missing processing the very ID (collection) we were working on, leading to missing removing some child collection pointers, leading to the crash (later on in LayerCollection resync process). For now we go with an optimization & fix that avoids processing all collections in Main when we actually know which one we are working one (case of `BKE_libblock_relink_ex`, but not of `BKE_libblock_remap_locked`). This is however yet another demonstration of the need to rework that whole collection/layer resync process, since it is not only extremely inneficient currently, but it also requires valid Main/ID state way too deep into the remapping code. NOTE: This fix may very well not catch/address all possible fail cases here, dealing with the double parent/child relationships of collections is challenging... Issue reported by @eyecandy from the studio, thanks.
2021-04-23Merge branch 'blender-v2.93-release'Jacques Lucke
2021-04-23Fix T87582: incorrect interpolation from edge to corner domainJacques Lucke
2021-04-23Geometry Nodes: warn when output attribute has not been savedJacques Lucke
2021-04-22Geometry Nodes: Add initializer for attribute creationHans Goudey
Previously we always had to set attribute values after creating the attribute. This patch adds an initializer argument to `attribute_try_create` which can fill it in a few ways, which are explained in code comments. This fixes T87597. Differential Revision: https://developer.blender.org/D11045
2021-04-22Geometry Nodes: Get attribute domain and type without allocationHans Goudey
Because we use virtual classes (and for other reasons), we had to do a small allocation when simply retrieving the data type and domain of an existing attribute. This happened quite a lot actually-- to determine these values for result attributes. This patch adds a simple function to retrieve this meta data without building the virtual array. This should lower the overhead of every attribute node, though the difference probably won't be noticible unless a tree has very many nodes. Differential Revision: https://developer.blender.org/D11047
2021-04-22Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-22Fix T85051: Add bisect distance as a parameter to the mirror modifierFalk David
The `bisect_distance` in the mirror modifier was hard-coded to `0.001`. This would result in some unexpected behavior like vertices close to the mirror plane being deleted or merged. The fix now adds a parameter to the mirror modifier to expose the bisect distance to the user. The default is set to the previous hard-coded value to not "change" previous files. Ref D10201
2021-04-21Geometry Nodes: add method to get attribute by name and typeJacques Lucke
This is needed by the upcoming Attribute Transfer node. It changes its behavior based on what domain the attribute is on.
2021-04-21Geometry Nodes: extract mesh surface sampling functions to separate fileJacques Lucke
2021-04-20Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-20Fix T86871: Crash with to_mesh() on tapered bezier curveCampbell Barton
2021-04-20Geometry Nodes: support geometry nodes modifier on volume objectsJacques Lucke
Differential Revision: https://developer.blender.org/D11011
2021-04-20Cleanup: remove redundant code/comments from BKE_mesh_nomain_to_meshCampbell Barton
2021-04-20Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-20Fix T87055: Crash applying modifier on mesh with multires dataCampbell Barton
2021-04-20PyAPI: support Operator.poll functions 'disabled' hintCampbell Barton
Python scripts can now define the reason it's poll function fails using: `Operator.poll_message_set(message, ...)` This supports both regular text as well as delaying message creation using a callback which should be used in situations where constructing detailed messages is too much overhead for a poll function. Ref D11001
2021-04-20Cleanup: add CTX_wm_operator_poll_msg_clearCampbell Barton
Call this function instead of `CTX_wm_operator_poll_msg_set(C, NULL)`
2021-04-19Merge branch 'blender-v2.93-release'Brecht Van Lommel