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-07-20Pose Library: remove assumption about Action group namesSybren A. Stüvel
Remove the assumption of the pose library that Action groups are named after the bones in the armature. Even though this assumption is correct when the keys are created by Blender, action groups can be renamed. Keys created by Python scripts can also use arbitrary group names. Since there is more code in Blender making this assumption, and looping over selected bones is also a common occurrence, this commit contains some generic functionality to aid in this: - `BKE_armature_find_selected_bones`: function that iterates over all bones in an armature and calls a callback for each selected one. It returns a struct with info about the selection states (all or no bones selected). - `BKE_armature_find_selected_bone_names(armature)` uses the above function to return a set of selected bone names. - `BKE_pose_find_fcurves_with_bones()` calls a callback for each FCurve in an Action that targets a bone, also passing it the bone name.
2021-07-20Cleanup: fix clang-tidy warning readability-qualified-autoSybren A. Stüvel
No functional changes.
2021-07-20Cleanup: fix clang-tidy readability-else-after-returnSybren A. Stüvel
No functional changes
2021-07-20Cleanup: fix clang-tidy warning modernize-use-nullptrSybren A. Stüvel
No functional changes.
2021-07-20Pose backup: convert from C to C++Sybren A. Stüvel
Convert `pose_backup.c` (in C) to `pose_backup.cc` (in C++). This will make future improvements easier. For now, it's the same code with just some additional explicit casts (C++ doesn't allow implicitly casting `void *`), `NULL` changed into `nullptr`, and some other simple changes. No functional changes.
2021-07-20Fix T89981: missing refresh on the compositors render layer node when ↵Philipp Oeser
adding/removing AOVs Just refresh the node's outputs via ntreeCompositUpdateRLayers(). Maniphest Tasks: T89981 Differential Revision: https://developer.blender.org/D11973
2021-07-20Fix T89982: Geometry Nodes: 'New' Button tries to create node_tree on active ↵Philipp Oeser
modifier, rather than button context When done from the Properties Editor, the context's modifier should be used (this is where the button is located), when done from elsewhere, the active modifier is still the way to go (since the context modifier is not available then) Maniphest Tasks: T89982 Differential Revision: https://developer.blender.org/D11972
2021-07-20Fix: Bezier segment node adds handles incorrectlyJohnny Matthews
This caused the "cyclic" attribute to appear dysfunctional.
2021-07-20Fix T89979: Assert in edit mode with curve to mesh nodeHans Goudey
The node tagged polys normals dirty, but the function to calculate the normals didn't clear the dirty flags for polys. Now clear the poly and corner dirty normal flags.
2021-07-20Cleanup: use single back-tick quoting in commentsCampbell Barton
While doxygen supports both, conform to our style guide. Note that single back-tick's are already used in a majority of comments.
2021-07-20Cleanup: use doxygen style parameters in noise.cCampbell Barton
These used their own ad-hoc syntax.
2021-07-20Cleanup: added const keyword to BLI_dlrbTree search functions.Jeroen Bakker
2021-07-20Cleanup: Remove redundant forward declarations.Jeroen Bakker
2021-07-20Fix crash in delaunay C interface test.Howard Trickey
The test forgot to set the new need_ids field, which luckily exposed a bug in the C api for delaunay when that field is false. Fixed the bug and the test, and added a test for the need_ids false case.
2021-07-20Compositor: Fix crash when connecting multiple constant inputsManuel Castilla
Operation receiving inputs was being folded more than once when it was constant foldable.
2021-07-20LineArt: UI cleanups.YimingWu
Wording on the UI, slider consistency and material mask switches layout. Reviewed By: Sebastian Parborg (zeddb) Differential Revision: http://developer.blender.org/D11839
2021-07-20Cleanup: reserve C++ comments for disabled codeCampbell Barton
Use C comments for plain text.
2021-07-20Cleanup: use '#if 0' for disabling multiple linesCampbell Barton
2021-07-20Cleanup: Make function static, use const object argumentHans Goudey
Also use `const Curve *` instead of `const Object *`, since the function works at a lower level than objects anyway. And also remove another unused function. Since this section of code for converting curves to meshes will likely be replaced, it's nicer to see which parts actually remain used at this point.
2021-07-20Cleanup: spellingCampbell Barton
2021-07-20Cleanup: quiet GCC maybe-uninitialized warningCampbell Barton
Function signatures for snap callbacks used `const` incorrectly which was hidden by casting function types. This made it seem as if the input arguments wouldn't be change and wouldn't be initialized. Name return arguments with an `r_` prefix, order them last, remove function casts and correct `const` usage.
2021-07-20Cleanup: Remove unused functionHans Goudey
2021-07-20Docs: Update RNA to user manual mappingsAaron Carlisle
2021-07-20Cleanup: Clang formatAaron Carlisle
2021-07-19Compositor: Export operation results as debug optionManuel Castilla
When fixing issues, seeing operation results can be helpful for detecting which operation went wrong. This commit adds an option for exporting all operations results to image files. Exceptions are: - Output operations: They are already exported or can be seen in UI. - Constant operations: There are too many and is rarely useful. They are exported to "<temp session folder>/COM_operations/" with filenames "<operation class name>_<operation id>.png". Only works on full frame execution mode. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11722
2021-07-19Compositor: Full frame Brightness nodeManuel Castilla
Adds full frame implementation to this node operation. No functional changes. 2.4x faster than tiled fallback. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11677
2021-07-19Compositor: Full frame Mix nodeManuel Castilla
Adds full frame implementation to this node operations. No functional changes. 2.3x faster than tiled fallback on average. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11686
2021-07-19Compositor: Full frame Viewer nodeManuel Castilla
Adds full frame implementation to this node operation. No functional changes. No performance changes. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11698
2021-07-19Compositor: Full frame Double Edge Mask nodeManuel Castilla
Adds full frame implementation to this node operation. No functional changes. No performances changes. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11750
2021-07-19Compositor: Full frame Ellipse Mask nodeManuel Castilla
Adds full frame implementation to this node operation. No functional changes. 3x times faster than tiled fallback. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11635
2021-07-19Compositor: Buffer iteratorsManuel Castilla
Currently we mostly iterate buffer areas using x/y loops or through utility methods extending from base classes. To simplify code in simple operations this commit adds wrappers for specifying buffer areas and their iterators for raw buffers with any element stride: - BufferRange: Specifies a range of contiguous buffer elements from a given element index. - BufferRangeIterator: Iterates elements in a BufferRange. - BufferArea: Specifies a rectangle area of elements in a 2D buffer. - BufferAreaIterator: Iterates elements in a BufferArea. - BuffersIterator: Simultaneously iterates an area of elements in an output buffer and any number of input buffers. - BuffersIteratorBuilder: Helper for building BuffersIterator adding buffers one by one. For iterating areas coordinates it adds `XRange` and `YRange` methods that return `IndexRange`. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11882
2021-07-19Cleanup: Move asset library reference C++ wrapper to own filesJulian Eisel
Although currently only the asset list code uses the asset library reference wrapper, it can stand on its own and may be used in more places in the future. So I prefer to give it its own source & header file. Also removed unused includes, added proper namespaces as per our C++ style guidelines, and removed an unnecessary TODO comment.
2021-07-19Cleanup: Remove unused function, unused declarationHans Goudey
2021-07-19Fix some mesh edition macro operators incorrectly setting an empty ↵Bastien Montagne
description string. No operator or macro should be missing description. But if they do, then they should use NULL pointer, and not an empty string. This behavior was already enforced (through an assert) for operators, previous commit made it the same for macros.
2021-07-19Fix broken 'undocumented' case in registration of Macro opertators.Bastien Montagne
Code dealing with macro operators missing description field was slightly different than the one from Operator registration. This lead to invalid memory accesses in some python introspection cases like the i18n messages extraction code in `bl_i18n_utils` module.
2021-07-19Cleanup: Separate keyframes_draw and keyframes_keylist.Jeroen Bakker
The keylist functions are used in other places for none drawing related stuff. Fe pose_slide uses it.
2021-07-19Revert "Depsgraph: Implement 'ID_RECALC_GEOMETRY_DEFORM'"Germano Cavalcante
This reverts commits bfa3dc91b75407b063f2ac991b176d98c050f92d, 52b94049f2a71a74f52247f83657cf3a5c8712b4, ae379714e4f1eca74f5f77532a6e959f29445236, a770faa811ee62837eb540b0bd83ca0770f16663, 4ed029fc02b022cb5ff28ed3ce70992c450d2be5, 101a493ab556c6597ac91fba204059be67b35990 and 62a2faa7ef39130446716d7a06215cd1df1eb2ac. And fixes T89955. Changing the dependency graph is a can of worms and the result is a kind of unpredictable. A different solution will be planned.
2021-07-19Object update: Remove fallback from batch_cache_deform_tagGermano Cavalcante
Falback is not really necessary, and causes `BKE_object_data_batch_cache_dirty_tag` to run multithreaded in an unsafe way. No functional changes.
2021-07-19Fix T89941: No path`s bevel update, when I change bevel profile curveGermano Cavalcante
Update was skipping the batch cache.
2021-07-19Cleanup: minor correction to delaunay_2d_cdt doc-stringCampbell Barton
Use more conventional syntax for default arguments.
2021-07-19Cleanup: remove unused pathlib importCampbell Barton
2021-07-19Cleanup: remove unused MTex.pmapto, pmaptoneg & definesCampbell Barton
These have not been in use since 2.57 fafbd9d71b95776d1c7583476de74fccefab7f10.
2021-07-19Fix: memcpy overlapping region ASAN warning in curve trim nodeHans Goudey
2021-07-19Cleanup: Make curve trim node code more semantically correctHans Goudey
The code used `Spline::LookupResult` in a way that referred to evaluated points and control points interchangeably. That didn't affect the logic, but the code became harder to read. Instead, introduce a local struct to contain the data in a more obvious way.
2021-07-18Update documentation string for mathutils.geometry.delaunay_2d_cdt.Howard Trickey
2021-07-18Make it optional to track input->output mapping in delaunay_2d_calc.Howard Trickey
Some uses of delaunay_2d_calc don't need to know the original verts, edges, and faces that correspond to output elements. This change adds a "need_ids" value to the CDT input spec, default true, which tracks the input ids only when true. The python api mathutils.geometry.delaunay_2d_cdt gets an optional final bool argument that is the value of need_ids. If the argument is not supplied, it is true by default, so this won't break old uses of the API. On a sample text test, not tracking ids save about 30% of the runtime. For most inputs the difference will not be so dramatic: it only really kicks in if there are a lot of holes.
2021-07-18Fix T89929: Crash when hiding in the render a previously keyframed volumeGermano Cavalcante
Regression introduced in {rBbfa3dc91b754}. `ID_RECALC_GEOMETRY` should tag all operations of the `GEOMETRY` component and not just the operation of node `GEOMETRY_EVAL_INIT`.
2021-07-18Geometry Nodes: Curve Trim NodeAngus Stanton
This node implements shortening each spline in the curve based on either a length from the start of each spline, or a factor of the total length of each spline, similar to the "Start & End Mapping" panel of curve properties. For Bezier curves, the first and last control points are adjusted to maintain the shape of the curve, but NURB splines are currently implicitly converted to poly splines. The node is implemented to avoid copying where possible, so it outputs a changed version of the input curve rather than a new one. Differential Revision: https://developer.blender.org/D11901
2021-07-18Speed up Delaunay raycast.Eric Abrahamsson
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.
2021-07-18Versioning: fix vertex group name loss in linked duplicates.Alexander Gavrilov
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