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
2020-04-03Cleanup: Rename ScrArea variables from sa to areaJulian Eisel
Follow up of b2ee1770d4c3 and 10c2254d412d, part of T74432. Now the area and region naming conventions should be less confusing. Mostly a careful batch rename but had to do few smaller fixes. Also ran clang-format on affected files.
2020-04-03Cleanup: split ED_mesh_mirror_*_table into multiple functionsCampbell Barton
Spatial & topology mirror table each used a single function taking a char as an identifier. Split these into begin/end/lookup functions.
2020-04-03Cleanup: split `BKE_anim.h` and `anim.c` into smaller piecesSybren A. Stüvel
The files are now split up into the following sections: - `BKE_anim_path.h` and `anim_path.c` for path/curve functions. - `BKE_anim_visualization.h` and `anim_visualizationanim_path.c` for animation visualization (mostly motion paths). - `BKE_duplilist.h` for DupliList function declarations. These were already implemented in `object_dupli.c`, so they were rather out of place being declared in `BKE_anim.h` in the first place. No functional changes.
2020-04-03Cleanup: use abbreviated names for unsigned types in editorsCampbell Barton
2020-04-03Cleanup: spellingCampbell Barton
2020-04-01Cleanup: use sections for object_remesh.cCampbell Barton
Add missing sections.
2020-04-01Cleanup: quiet discarded-qualifiers, unused warningsCampbell Barton
2020-03-31Voxel Remesh: Edit Voxel Size operatorPablo Dobarro
This operator lets the user control the voxel/detail size of the voxel remesher directly from the 3D view in a similar way the Brush radius and strength are controlled. The shorcut from sculpt mode is Shift + R (similar to Shift + F for brush strength). It shows a grid that represents the real voxel size of the object. The grid and the text are automatically aligned to the view to avoid rendering all voxels with thousands of lines. It also has a slow mode when pressing shift that works like the slow mode of the brush radius control. This operator controls the value changes sensitivity automatically to avoid jumping to extremelly high resolutions and run out of memory. This way, adjusments done in lower voxel sizes are more precise. Pressing Ctrl disables this functionality and allows changing the voxel size directly in a linear way. Reviewed By: jbakker, #user_interface, billreynish Differential Revision: https://developer.blender.org/D6449
2020-03-26Fix crashes from various missing checks in operator poll functionsCampbell Barton
Issues exposed by 'bl_run_operators.py' utility.
2020-03-26Fix crash when make proxy failed to assign a proxyCampbell Barton
2020-03-26Cleanup: use doxy sections & add missing sectionsCampbell Barton
2020-03-23Revert "COW: Edit Mesh: Do not copy the looptris pointer"Germano Cavalcante
The looptri is repeated in the linked Meshes but the pointer is only referenced in the evaluated ones. This reverts commit 64982e213f014123d1b0406cf9ae893910a6a3d3.
2020-03-23COW: Edit Mesh: Do not copy the looptris pointerGermano Cavalcante
No functional changes. Differential Revision: https://developer.blender.org/D7173
2020-03-20Fix T74649: Outliner: Cannot set/clear parent with 'Keep Transforms'Philipp Oeser
Parenting in the outliner via drang and drop would always happen without the 'Keep Transforms' option. Since this is often desired, this adds the ability to hold Alt for doing this to the drop action. Adding the hint to hold Alt to the operator name is not nice, but since the operator name is used for the UI, there doesnt seem to be a nicer way of doing this. If modifier keys are needed back for other actions, spawning a menu instead could be an alternative for the future. Maniphest Tasks: T74649 Differential Revision: https://developer.blender.org/D7120
2020-03-19Cleanup: fix typos in commentsBrecht Van Lommel
Contributed by luzpaz. Differential Revision: https://developer.blender.org/D7133
2020-03-19Cleanup/refactor: remove BKE_idcode, in favour of BKE_idtype.Bastien Montagne
Mpving utils from idcode to idtype proved to be somewhat painful for some reasons, but now all looks good. Had to add a fake/empty shell for the special snowflake too, `ID_LINK_PLACEHOLDER/INDEX_ID_NULL`...
2020-03-19Cleanup: add extern CJacques Lucke
2020-03-19GPencil: Cleanup - Split BKE_gpencil.h geometry functions into ↵Antonio Vazquez
BKE_gpencil_geom.h This split prepare the code for future geometry functions.
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-03-18Cleanup: Resolve HKEY conflictRay Molenkamp
Both the MS headers and blender headers define the HKEY which gives all kind of inclusion order issues. This diff renames all *KEY constants to EVT_*KEY to resolve this conflict. Reviewed By: brecht , dfelinto Differential Revision: http://developer.blender.org/D7164
2020-03-18Objects: add Volume object type, and prototypes for Hair and PointCloudBrecht Van Lommel
Only the volume object is exposed in the user interface. It is based on OpenVDB internally. Drawing and rendering code will follow in another commit. https://wiki.blender.org/wiki/Source/Objects/Volume https://wiki.blender.org/wiki/Reference/Release_Notes/2.83/Volumes Hair and PointCloud object types are hidden behind a WITH_NEW_OBJECT_TYPES build option. These are unfinished, and included only to make it easier to cooperate on development in the future and avoid tricky merges. https://wiki.blender.org/wiki/Source/Objects/New_Object_Types Ref T73201, T68981 Differential Revision: https://developer.blender.org/D6945
2020-03-15Cleanup: redundant checksCampbell Barton
In some cases moved the checks into asserts, to ensure changes in the future don't cause the checks to become necessary again.
2020-03-13Fix T74397: Crash after undoing quadriflow remesh on duplicate with armature ↵Sebastian Parborg
deform The issue was that we were creating temporary mesh copies and storing them in bmain and then later using BKE_mesh_nomain_to_mesh which would add them to bmain once more (duplicates). This would lead to crashes later as the custom data of the mesh could be trashed quite easily.
2020-03-13Multires: Fix Subdivide, Reshape and Apply BaseSergey Sharybin
This change fixes artifacts produced by these operations. On a technical aspect this is done by porting all of the operations to the new subdivision surface implementation which ensures that tangent space used to evaluate modifier and those operations is exactly the same (before modifier will use new code and the operations will still use an old one). The next step is to get sculpting on a non-top level to work, and that actually requires fixes in the undo system.
2020-03-09GPencil: Refactor of Draw Engine, Vertex Paint and all internal functionsAntonio Vazquez
This commit is a full refactor of the grease pencil modules including Draw Engine, Modifiers, VFX, depsgraph update, improvements in operators and conversion of Sculpt and Weight paint tools to real brushes. Also, a huge code cleanup has been done at all levels. Thanks to @fclem for his work and yo @pepeland and @mendio for the testing and help in the development. Differential Revision: https://developer.blender.org/D6293
2020-03-06Cleanup: Rename ARegion variables from ar to regionJulian Eisel
The old convention was easy to confuse with ScrArea. Part of https://developer.blender.org/T74432. This is mostly a batch rename with some manual fixing. Only single word variable names are changed, no prefixed/suffixed names. Brecht van Lommel and Campbell Barton both gave me a green light for this convention change. Also ran clan clang format on affected files.
2020-03-06Cleanup: keyframe API naming, high level keyframe APICampbell Barton
- Split 'verify_fcurve' into two functions: ED_action_fcurve_ensure which adds the f-curve if needed. ED_action_fcurve_find which returns NULL when not found. Callers of ED_action_fcurve_find had unused 'group' argument which has been removed. - Rename verify_adt_action to ED_id_action_ensure It had an argument to add data which was always true, remove this instead of splitting in into a separate function.
2020-03-06Cleanup: use 'BKE_' prefix for BKE_deform API callsCampbell Barton
- Use 'BKE_object_defgroup' prefix for object functions. - Rename 'defvert_verify_index' to 'defvert_ensure_index' since this adds the group if it isn't found.
2020-03-06Cleanup: spellingCampbell Barton
2020-03-05Sculpt Face SetsPablo Dobarro
Face Sets are the new system to control the visibility state of the mesh in sculpt and paint modes. They are designed to work in modes where brushes are the primary way of interaction and they provide much more control when working with meshes with complex shapes and overlapping surfaces. This initial commit includes: - Sculpt Face Sets data structures and PBVH rendering. - Face Set overlay and opacity controls. - Sculpt Undo support. - Remesher reprojection support. The visibility state of the mesh is also preserved when remeshing. - Automasking and Mesh filter support. - Mask expand operator mode to expand Face Sets (Shift + W) and flood fill areas by connectivity (press Ctrl while expanding). - Sculpt Mode Face Sets and Visibility API. - Sculpt Face Sets creation and visibility management operators. - Operator to randomize the Face Sets colors. - Draw Face Sets brush tool to create and edit the Face Sets. Drawing on the mesh creates a new Face Set. Pressing Ctrl before drawing modifies the Face Set under the brush at the beginning of the stroke. - Updated keymap and menu to work with Face Sets from Sculpt Mode (H to toggle visibility, Alt + H to show all, Shit + H to hide). - Pie menu on the W key with Face common Sets operations. Know limitations: - Multires support. The Face Sets and Visibility API needs to be implemented for Multires. Reviewed By: jbakker, #user_interface, Severin Differential Revision: https://developer.blender.org/D6070
2020-03-05Cleanup: redundant castsCampbell Barton
2020-03-05Cleanup: material API namingCampbell Barton
- Use 'BKE_object_material_*', 'BKE_id_material_*' prefix for functions that operate on Object and ID types. - Use '_len' suffix for length (matching BLI naming). - Use '_p' suffix for functions that return a pointer to values where the value would typically be returned. Functions renamed: - BKE_object_material_resize was BKE_material_resize_object - BKE_object_material_remap was BKE_material_remap_object - BKE_object_material_remap_calc was BKE_material_remap_object_calc - BKE_object_material_array_p was BKE_object_material_array - BKE_object_material_len_p was BKE_object_material_num - BKE_id_material_array_p was BKE_id_material_array - BKE_id_material_len_p was BKE_id_material_num - BKE_id_material_resize was BKE_material_resize_id - BKE_id_material_append was BKE_material_append_id - BKE_id_material_pop was BKE_material_pop_id - BKE_id_material_clear was BKE_material_clear_id
2020-03-04Fix T73797: Selection/Editing after Make Single User for Object DataPhilipp Oeser
fails Exposed by rB50d5c03e2d14. This was only a problem when _only_ 'Object Data' was made local. If also e.g. 'Object' or 'Materials' was checked, these were already making sure realations were updated [DEG_relations_tag_update(bmain)]. Now also call DEG_relations_tag_update(bmain) for the 'Object Data' case. I assume the underlying issue is that there is some ID_NEW_REMAP happening in 'single_obdata_users()' -- including that for 'me- >texcomesh', which might be responsible for the glitches in selection/ editing? Also not entirely sure why this wasnt a problem prior to rB50d5c03e2d14.(I assume this was somewhat hidden by the fact this was always called with a default action being nothing, the user would always need to access the redo panel. So this might have been hidden by an Undo step involved?) Maniphest Tasks: T73797 Differential Revision: https://developer.blender.org/D7020
2020-03-04Cleanup: replace commented code with define checkCampbell Barton
Avoids duplicated comments, also quiet warning accessing non-existing variable.
2020-03-03Fix T71871: Quadriflow remesh operator don't stack operationsSebastian Parborg
Made an explicit call to the exec function be a blocking call and a call from invoke (or otherwise) be nonblocking. Reviewed By: Bastien Differential Revision: http://developer.blender.org/D7006
2020-03-03Remove the "use mesh curvature" option from quadriflowSebastian Parborg
It sometimes caused the solver to get into an seemingly unrecoverable state and crash. Therefore I will disable this feature for now.
2020-02-27Fix T69576, T74059: issues with rotation when adding objectsPhilipp Oeser
This clarifies logic in ED_object_add_generic_get_opts (see comments in code). Also following issues are adressed: - do not enforce setting the op UI to WORLD when rotation is set (e.g. on redo). This is not wrong (happens in world space), but is more confusing than helpful (was added in own rB3b8a14a3c072). - respect setting the User Preference to WORLD properly (could fail when set to something else, then back to WORLD) Maniphest Tasks: T69576 Differential Revision: https://developer.blender.org/D6943
2020-02-27Constraints: replace 'Set Inverse' operator with an eval-time updateSybren A. Stüvel
This fixes {T70269}. Before this commit there was complicated code to try and compute the correct parent inverse matrix for the 'Child Of' and 'Object Solver' constraints outside the constraint evaluation. This was done mostly correctly, but did have some issues. The Set Inverse operator now defers this computation to be performed during constraint evaluation by just setting a flag. If the constraint is disabled, and thus tagging it for update in the depsgraph is not enough to trigger immediate evaluation, evaluation is forced by temporarily enabling it. This fix changes the way how the inverse matrix works when some of the channels of the constraint are disabled. Before this commit, the channel flags were used to filter both the parent and the inverse matrix. This meant that it was impossible to make an inverse matrix that would actually fully neutralize the effect of the constraint. Now only the parent matrix is filtered, while inverse is applied fully. As a result, pressing the 'Set Inverse' matrix produces the same transformation as disabling the constraint. This is also reflected in the changed values in the 'Child Of' unit test. This change is not backward compatible, but it should be OK because the old way was effectively unusable, so it is unlikely anybody relied on it. The change in matrix for the Object Solver constraint is due to a different method of computing it, which caused a slightly different floating point error that was slightly bigger than allowed by the test, so I updated the matrix values there as well. This patch was original written by @angavrilov and subsequently updated by me. Differential Revision: https://developer.blender.org/D6091
2020-02-25Constraints: fixed Object Solver 'Clear Inverse' operatorSybren A. Stüvel
The 'Clear Inverse' operator didn't properly update the constraint, so it didn't do anything until the entire depsgraph was updated. It's now properly tagged for update.
2020-02-25Cleanup: fixed copy-paste error in Object Solver constraint messageSybren A. Stüvel
The message was clearly copied from the Child Of constraint, and never changed to Object Solver. No functional changes.
2020-02-24Fix T74099: Can`t apply modifier, if mesh have fake user.Bastien Montagne
Also cleaned up code there, making a proper poll function for the apply modifier operator, that way button is properly disabled in UI itself in most invalid situations.
2020-02-19Cleanup: assign Main, use existing assignmentsCampbell Barton
Avoid accessing inline since it's often used multiple times. In some cases it was already defined.
2020-02-17Fix T68749: BPY: Deprecate height of popupJeroen Bakker
`invoke_props_dialog` and `invoke_popup` had a width and a height field. The height field was ignored as the height is determined based on the content. This change removes the field from the BPY + WM_api Reviewed By: Campbell Barton, Jacques Lucke Differential Revision: https://developer.blender.org/D6694
2020-02-17Fix many typos and other issues in UI messages.Bastien Montagne
2020-02-13Refactor libquery ID looper callback to take a single parameter.Bastien Montagne
Using a struct here allows to change given parameters to the callbacks without having to edit all callbacks functions, which is always noisy and time consuming.
2020-02-12Weight Paint: add a pie menu for locking and unlocking vertex groups.Alexander Gavrilov
Provide different options for locking and unlocking vertex groups using bone selection, accessible via a pie menu triggered via the 'K' hotkey. To implement a variety of operations, extend the old operator with a new option to mask it by bone selection. If the X Mirror option is enabled, selection is automatically mirrored. This follows D6533 as the next step in improving accessibility of vertex group locking during weight painting. Differential Revision: https://developer.blender.org/D6618
2020-02-11Merge branch 'blender-v2.82-release'Sergey Sharybin
2020-02-11Fix T73675: Leaving exit mode tags all objects for updateSergey Sharybin
This is an oversight of a fix for T69834, where I didn't realize the ED_object_editmode_exit_ex() function is called for all objects as an opposite of only the ones which were in edit mode. Seems a simple fix: just move tag into a check that object was in the edit mode prior to tag. Differential Revision: https://developer.blender.org/D6808
2020-02-11UI: Use popup dialog for make single user from operator searchCampbell Barton
Use a popup since the default action was to do nothing, the user would always need to access the redo panel. Resolves T73711.
2020-02-10Cleanup: Rename `BKE_library_override_` functions to `BKE_lib_override_library_`Bastien Montagne
pqrt of T72604.