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-09-05Cleanup: spellingCampbell Barton
2020-09-05GPUTexture: Change texture creation APIClément Foucault
This is to modernize the API: - Add meaningful name to all textures (except DRW textures). - Remove unused err_out argument: only used for offscreen python. - Add mipmap count to creation functions for future changes. - Clarify the data usage in creation functions. This is a cleanup commit, there is no functional change. # Conflicts: # source/blender/gpu/GPU_texture.h
2020-09-05Cleanup: GPUTexture: Remove use of GPU_texture_create_nDClément Foucault
Use creation + update function instead.
2020-09-05GPUTexture: Remove bind to edit callsClément Foucault
This is going to be unecessary after the GPU opengl texture backend refactor. For now add a save/restore mechanism to leave the state untouched. Also remove some calls where the caller would bind to particular binding point and set the shader uniform.
2020-09-04Cleanup: Clang-Tidy readability-inconsistent-declaration-parameter-name fixSebastian Parborg
No functional changes
2020-09-04Cleanup: Use function pointers in sculpt gesturesPablo Dobarro
This replaces the switch case and operation types with a SculptGestureOperation struct with callbacks. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8798
2020-09-04Fix T80273: Restrict option in weight paint doesn't work with gradientPhilipp Oeser
With the 'Restrict' option, the gradient should be restricted to the assigned vertex, just like the other weight paint tools. Maniphest Tasks: T80273 Differential Revision: https://developer.blender.org/D8761
2020-09-03Sculpt: Face Set Extract OperatorPablo Dobarro
This implements a Face Set Extract operator, which is similar to mask extract. This operator uses a picker to select and Face Set in the mesh and extract the geometry directly to a new object. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8599
2020-09-03Sculpt: Remove unused code in Clay StripsPablo Dobarro
This was doing a matrix inversion per vertex per stroke step and it was unused. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8791
2020-09-03Fix cloth brush not working with anchored strokePablo Dobarro
All brushes except for grab need delta for tip orientation in order to work with anchored stroke, not only snake hook, which is the one that needs it always. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8789
2020-09-03Sculpt: Sculpt Face Set gestures toolsPablo Dobarro
This implements the sculpt gesture lasso and box operators for face sets. They work the same way as the mask gesture operator and tools. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8716
2020-09-03Fix T63125: Gpencil: bones cannot be selected in weightpaint modePhilipp Oeser
Some underlying functionality was not ready for greasepencil: - BKE_modifiers_get_virtual_modifierlist (now introduce dedicated BKE_gpencil_modifiers_get_virtual_modifierlist) - BKE_modifiers_is_deformed_by_armature - checks in drawing code - checks in (pose) selection code A couple of changes to make this work: - `eGpencilModifierType_Armature` has to be respected (not only `eModifierType_Armature`) - `OB_MODE_WEIGHT_GPENCIL` has to be respected (not only `OB_MODE_WEIGHT_PAINT`) -- (now use new `OB_MODE_ALL_WEIGHT_PAINT`) - `gpencil_weightmode_toggle_exec` now shares functionality from `wpaint_mode_toggle_exec` -- moved to new `ED_object_posemode_set_for_weight_paint` This patch will also set the context member "weight_paint_object" for greasepencil (otherwise some appropriate pose operators wont work when in weightpaint mode) Reviewed By: campbellbarton Maniphest Tasks: T63125 Differential Revision: https://developer.blender.org/D8483
2020-09-02Fix Cloth Snake Hook brush not using pressurePablo Dobarro
The Snake Hook deformation mode was using the same strength as grab (not supporting pressure), but this deformation mode supports pressure. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8724
2020-09-02Fix T80311: Sculpt Filters not working when using vertical splitPablo Dobarro
All filters were using prevclicx, which is in screen coordinates and mval[0], which is in region coordinates to get the filter strength. This fixes the issue in all filters. Reviewed By: Severin Maniphest Tasks: T80311 Differential Revision: https://developer.blender.org/D8776
2020-09-02Cleanup: use bool instead of int in various placesJacques Lucke
2020-08-28cleanup: Fix style issue in sculpt.cRay Molenkamp
At first sight this code should not build at all but due to the use of macro's that look like functions this seemingly has no issues building. Clang-format alerted me to this strange bit of code by placing the `if` on it's own line for some reason. added the missing brackets, and clang-format is happy again.
2020-08-26Clenaup: Refactor Sculpt gesture mask operatorsPablo Dobarro
This refactors Box Mask and Lasso mask making both functions share the same code. After this change it should be easier to add new functionality, new gesture tools or implement new gesture modes. No functional changes. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8707
2020-08-25Sculpt: Cloth Snake Hook BrushPablo Dobarro
This implements Snake Hook as a deform type for the cloth brush. This brush changes the strength of the deformation constraints per brush step to avoid affecting the results of the simulation as much as possible. It allows to grab the cloth without producing any artifacts in the surface and create more natural looking folds than any of the other deformation modes. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8621
2020-08-25Fix T80008: Smooth brush not deforming mesh boundaries correctlyPablo Dobarro
In 2.83 and previous versions there was a bug that was causing boundary vertices to be detected incorrectly that was preventing the smooth brush to work on boundaries if there was a pole on them. In 2.90 the boundary vertex detection was fixed, but it was still using a simplified version of the algorithm without any boundary smoothing. This patch implements a similar smoothing algorithm to what I think it was the intention of 2.83 and previous versions, but working correctly. Reviewed By: sergey Maniphest Tasks: T80008 Differential Revision: https://developer.blender.org/D8680
2020-08-20Cleanup: Mesh Filter invoke refactorPablo Dobarro
This moves the allocation for filter to separate functions, removes all repeated calls to RNA_enum_get an fixes some other code quality issues. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8639
2020-08-20GPUState: Use explicit depth test enumClément Foucault
2020-08-20Fix T79924: Update the view rotation origin after setting the sculpt pivotPablo Dobarro
This updates the view navigation origin after modifying the pivot position. Reviewed By: sergey Maniphest Tasks: T79924 Differential Revision: https://developer.blender.org/D8632
2020-08-20Fix variable simulation steps with cloth deform brushesPablo Dobarro
Cloth deform brushes (both in cloth brush or other tools with cloth simulation targets) should not have their spacing as a value relative the brush radius to avoid affecting the simulation speed when changing the brush radius. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8620
2020-08-20Sculpt: Add orientation modes to the Cloth FilterPablo Dobarro
This adds the orientation modes to the Cloth Filter. Similar to the mesh filter, they set the orientation of the axis when limiting the forces. When using the gravity mesh filter, the orientation also sets the gravity direction. In world orientation, cloth will always fall towards the ground plane. In view mode, cloth will always fall down relative to the view. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8618
2020-08-19Cleanup: compiler warningsBrecht Van Lommel
2020-08-19Cleanup: spellingCampbell Barton
2020-08-18GPUState: Remove gpuPushAttr/gpuPopAttrClément Foucault
And use manual save/restore mechanism. The stack method is not used so much to be considered useful.
2020-08-18Cleanup: GPUState: remove double GPU_blend callsClément Foucault
2020-08-18GPUState: GPU_blend final API renamingClément Foucault
We now use GPU_blend for enabling / disabling blending and explicitly set the blend equation.
2020-08-18Cleanup: GPUState: remove use of GPU_blend_set_funcClément Foucault
2020-08-18Cleanup: GPU: Move towards an explicit Blend stateClément Foucault
This make use of the GLStateStack functions for: - `GPU_blend()` - `GPU_blend_set_func()` - `GPU_blend_set_func_separate()` The goal is to unify them using an explicit state setting. This will remove the need to use obscure blend functions
2020-08-18Sculpt: Enable Cloth Simulation Target for Pose and BoundaryPablo Dobarro
This adds a new brush property called "Deformation Target" which controls how the brush deformations is going to affect the mesh data. By default is set to Geometry, which makes the brushes displace the vertices. When set to Cloth Simulation, the deformation of the brush is applied to the cloth solver constraints, so the simulation is responsible to apply the final deformation. This allows to add cloth simulation effects to other sculpt tools with minor modifications to their code. This patch enables Cloth Simulation deformation target for Pose and Boundary brushes, which are tools that are already designed to work in low poly counts and produce large deformations. This allows creating the most common cloth effects, like bending and compressing folds, without relying on collisions. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8578
2020-08-18Sculpt: Erase Displacement Mesh FilterPablo Dobarro
Same concept as the Multires Displacement Eraser Brush but implemented as a mesh Filter. This allows to delete the displacement of an entire area uniformly. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8608
2020-08-18Sculpt: Enhance Details Mesh FilterPablo Dobarro
Exact same operation as D8509, implemented as a Mesh Filter. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8510
2020-08-18Sculpt: Invert Smooth to Enhance DetailsPablo Dobarro
This enables the invert mode in the smooth brush as Enhance Details. The operation is similar to the Sharpen Filter intensify details parameter, which consist in applying the laplacian smooth displacement in the opposite direction calculated using the original coordinates. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8509
2020-08-18Fix T79714: Projecting texture from camera failsSybren A. Stüvel
The evaluated mesh is now only recomputed when the required data layers are missing. Previously the evaluated mesh was re-evaluated incorrectly, which caused the stippled result and the failing assert. Since now only the evaluated mesh is used, and never a temporary mesh, there is also no more need to keep track of whether the mesh needs freeing or not. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8574
2020-08-18Sculpt: Sculpt Filter Orientation OptionsPablo Dobarro
Previously, the XYZ deform axis of the Mesh Filter were limited to object space (which is the default for sculpt mode). Now it is possible to limit the XYZ displacement in Local, Global or View space. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8582
2020-08-18Sculpt: Option to limit the forces axis in the Cloth FilterPablo Dobarro
This uses the same concept of the Mesh Filter but for applying the cloth filter forces, so now it can be limited to a specific axis. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8567
2020-08-18Mesh: merge `mesh_create_eval_final_{view,render}` functionsSybren A. Stüvel
Functions `mesh_create_eval_final_view()` and `mesh_create_eval_final_render()` were doing the exact same thing, except for a hack introduced in d3eb9dddd6b4 (2012-10-08, Better fix for T32846: dupligroup messes up particle instancing on rendering) that appears to be no longer necessary. Besides that, these functions had confusing names. Their functionality changed over time, and whether to do for-render or for-viewport evaluation is now actually determined by the depsgraph evaluation mode. This means that the `..._render` function could evaluate a mesh with viewport settings, and vice versa. The functions are now merged into `mesh_create_eval_final()`, and the hack has been removed. The `OB_NO_PSYS_UPDATE` flag has been removed entirely (instead of keeping it around as deprecated flag), because it was always only temporarily set on objects during mesh evaluation and thus not saved to the blend file. No expected functional changes as far as users are concerned.
2020-08-18Cleanup: rename bdata to boundaryPablo Dobarro
Reviewed By: sergey Differential Revision: https://developer.blender.org/D8556
2020-08-18Fix Cloth Brush Grab deform types not working with spacingPablo Dobarro
Even the Cloth Brush grab works like a regular grab brush, it makes sense to support spacing just in this brush in order to prevent creating more brush steps that update the simulation. This way, it is possible to create grab brushes that update the simulation constantly while grabbing (using the dots stroke mode) or brushes that only update the simulation when the cursor moves (using spacing). Reviewed By: sergey Differential Revision: https://developer.blender.org/D8568
2020-08-18Cleanup: Remove unused code in the Paint CursorPablo Dobarro
This code was left here after the refactor, it was doing nothing and it was causing an assert. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8579
2020-08-18Fix Face Set Visibility operator using wrong active Face SetPablo Dobarro
The Face Set visibility operator was using the last active Face Set updated by the paint cursor, so when the paint cursor is not used (when using a filter or a transform tool), the active Face Set was not updating and it was hidding the wrong Face Set based on the last cursor position with a brush tool active. Now the Face Set Visitility operator has an invoke callback wich forces a active vertex and face set update regardless of the active tool, so it should always work correctly. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8580
2020-08-18Fix Mask Slice deleting the Face SetsPablo Dobarro
This was a TODO in the code. Previously the Face Set datalayer was deleted and recreated with a constant ID of 0. Now the datalayer is preserved and set to the SculptSession after slicing the mask and a new ID is calculated for the new faces that the slicing operation produced, so they can be easily isolated for further tweaking. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8583
2020-08-18Sculpt: Expose the functions to create and init a SculptClothSimulationPablo Dobarro
This will be used for new features like supporting cloth deformation in other brushes and tools outside of the cloth brush code. No functional changes. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8602
2020-08-17Fix T79597: Crash with dyntopo after paint cursor refactorPablo Dobarro
The paint cursor now uses a single call to SCULPT_cursor_geometry_info_update and the Sculpt API to update both the radius and the SculptSession data, so random access needs to be initialized for dyntopo before using API functions. Reviewed By: sergey Maniphest Tasks: T79597 Differential Revision: https://developer.blender.org/D8489
2020-08-17Cleanup: spellingCampbell Barton
2020-08-16UI: Simplify cloth filter type descriptionHans Goudey
Remove extra words in the message and avoid repeating the name in the description.
2020-08-16Merge branch 'blender-v2.90-release'Hans Goudey
2020-08-16Fix T79823: Typo in cloth filter type descriptionHans Goudey