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-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.
2020-02-10Cleanup/refactor: Rename `BKE_library` files to `BKE_lib`.Bastien Montagne
Note that `BKE_library.h`/`library.c` were renamed to `BKE_lib_id.h`/`lib_id.c` to avoid having a too generic name here. Part of T72604.
2020-02-07Fix T73660: Hide envelop option for Grease Pencil weights generationAntonio Vazquez
As this feature is not supported yet, it's better to hide for grease pencil. Differential Revision: https://developer.blender.org/D6777
2020-02-07remove poll for OBJECT_OT_parent_clearPhilipp Oeser
This works on selected_editable_objects, so no active object mandatory. After deletion of the active object and using slection tools such as e.g. box select, the lack of an active object would prevent this operator from being called without good reason. Also cannot think of any other existing poll that would really make sense (Editor type, ...). ref T68975 Maniphest Tasks: T68975 Differential Revision: https://developer.blender.org/D6773
2020-02-07Cleanup: use of 'unsigned'Campbell Barton
- Replace 'unsigned' used on it's own with 'uint'. - Replace 'unsigned const char' with 'const uchar'.
2020-02-05Merge branch 'blender-v2.82-release'Clément Foucault
2020-02-05Fix T69834 Edit Mesh: Multi-object edit crash when an instance is hiddenClément Foucault
This was caused by a missing tag of the mesh datablock.
2020-02-05T73589: Code Quality: Renaming on BKE_material.hAntonio Vazquez
Old Name New Name ========= ========= init_def_material BKE_materials_init BKE_material_gpencil_default_free BKE_materials_exit test_object_materials BKE_object_materials_test test_all_objects_materials BKE_objects_materials_test_all give_matarar BKE_object_material_array give_totcolp BKE_object_material_num give_current_material_p BKE_object_material_get_p give_current_material BKE_object_material_get assign_material BKE_object_material_assign assign_matarar BKE_object_material_array_assign give_matarar_id BKE_id_material_array give_totcolp_id BKE_id_material_num assign_material_id BKE_id_material_assign clear_matcopybuf BKE_material_copybuf_clear free_matcopybuf BKE_material_copybuf_free copy_matcopybuf BKE_material_copybuf_copy paste_matcopybuf BKE_material_copybuf_paste BKE_material_init_gpencil_settings BKE_gpencil_material_attr_init BKE_material_add_gpencil BKE_gpencil_material_add BKE_material_gpencil_get BKE_gpencil_material BKE_material_gpencil_default_get BKE_gpencil_material_default BKE_material_gpencil_settings_get BKE_gpencil_material_settings
2020-02-01Merge branch 'blender-v2.82-release'Campbell Barton
2020-02-01Object: support 'Affect Parents' for snap/clear transformCampbell Barton
Resolves T69450
2020-02-01Merge branch 'blender-v2.82-release'Campbell Barton
2020-02-01Object: no longer skip weight paint objects when clearing transformCampbell Barton
This meant a non-active selected object would be skipped based on the mode last used, mostly an issue with 'Lock Object Modes' disabled. Other transform operators (such as snap) don't do this. Partially reverts b8aff064662d5
2020-01-27Merge branch 'blender-v2.82-release'Brecht Van Lommel
2020-01-27Cleanup: fix compiler warningsBrecht Van Lommel
2020-01-27Merge branch 'blender-v2.82-release'Bastien Montagne
2020-01-27Fix T73399: Crash trying to move the origin of an empty.Bastien Montagne
Empty objects have no obdata, so we need to check for NULL id...
2020-01-27Merge branch 'blender-v2.82-release'Campbell Barton
2020-01-27Fix T72449: Stale outliner selection after object duplicateCampbell Barton
2020-01-25Cleanup: spellingCampbell Barton
2020-01-24Merge branch 'blender-v2.82-release'Philipp Oeser
2020-01-24Fix T72083: Object.proxy_collection is been set to linked target objectPhilipp Oeser
even when target is not a collection Looks like this was (accidentally) removed in {rBbe9e469ead22} https://developer.blender.org/ rBbe9e469ead227aee8d4c29b98a125cf599c5c8bb#change-pFg0VUTAHY2q This could also result in a missing update in object_handle_update_proxy, see T72083 for an example. Thx @Macroni investigating! Maniphest Tasks: T72083 Differential Revision: https://developer.blender.org/D6651
2020-01-21Merge branch 'blender-v2.82-release'Bastien Montagne
2020-01-21Make ED_object_modifier_add() accept NULL scene parameter.Bastien Montagne
This data is only used to get current time/frame value, which is never mandatory to add a modifier. Needed by incoming fix to support particles modifiers in liboverrides.
2020-01-20Merge branch 'blender-v2.82-release'Brecht Van Lommel
2020-01-20Cleanup: remove redundant functionBrecht Van Lommel