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-03-13Cleanup: add BKE_pbvh_vertex_iter_begin to clang-formatPablo Dobarro
Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D10707
2021-03-09Fix crash in boundary brush after refactorPablo Dobarro
A missing continue in this loop. Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D10610
2021-03-02Sculpt: Expand OperatorPablo Dobarro
Expand is a new operator for Sculpt Mode which is intended to be the main tool for masking, Face Set editing, interacting with the filters and pattern creation. The fundamentals of the tool are similar to the previous sculpt.mask_expand operator. It shares the same default shortcuts and functionality, making the previous operator obsolete. The shortcuts to execute the operator are: - Shift + A: Expand mask - Shift + Alt + A: Expand mask by normals - Shift + W: Expand Face Set - Shift + Alt + W: Resize current Face Set The main changes compared to the previous sculpt.mask_expand operator are: - Modal keymap, all operator options can be changed in real time while the operator is running. - Supports creating Mask, Face Sets and Sculpt Vertex Colors. - Much better code, new features can be easily integrated. Limitations: - All Mask operations are supported for Sculpt Vertex colors, but not exposed by default as their support is still experimental. - Dyntopo does not support any Face Set or Sculpt Vertex Colors. functionality (they are not implemented in general for Dyntopo). - Multires does not support any feature related to geodesic distances. - Multires does not support vertex colors. - Multires does not support recursions. - In Multires, Face Sets snaping does not initialize all current enabled Face Sets when toggling snapping. - In Multires, Face Sets are created at base mesh level (works by this by design, like any other tool). - Unlike the previous mask_expand operator, this one does not blur the mask by default after finishing Expand as that does not fit the new design. The mask can still be blurred by using the mask filter manually. Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D10455
2021-02-10Cleanup: Unindent if statements in sculpt tools codePablo Dobarro
This removes indentations from if statements by converting them to early returns and continue. Most of the code of brushes and tools has loops with a full indented body inside of an if, which was also copied into some of the new tools. Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D10333
2021-02-03Fix memory leak in boundary brush preview dataPablo Dobarro
The edge preview data of the boundary needs to be freed with the boundary data created for the brush. Also, all data for the ScultpSession preview that is used to render the cursor needs to be freed with the ##SculptSession##. Found by Jacques Lucke Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D10173
2021-01-22Fix T84896: Boundary brush not affected by automaskingPablo Dobarro
This uses the values form the stroke automasking cache to control the falloff of all deformers in the boundary brush. Usually this is already considered in the general brush falloff function for the rest of the brushes, but this is one of the exceptions where the brush implements its custom falloff. Reviewed By: JacquesLucke Maniphest Tasks: T84896 Differential Revision: https://developer.blender.org/D10161
2020-10-20Fix Boundary brush not working when the whole mesh is inside the brush radiusPablo Dobarro
When creating the boundary edit data, the loop can stop because a new vertex was found further from the boundary than the brush radius or because all vertices of the mesh were already processed. In this second case, the max_propagation_step was not set, so the code that laters calculates the falloff was not working, preventing the mesh from deforming. Reviewed By: sergey Differential Revision: https://developer.blender.org/D9215
2020-10-20Sculpt: Smooth deform type for Boundary BrushPablo Dobarro
This adds a smooth deformation type to the boundary brush, which smooths the boundary and has a regular falloff towards the inside of the mesh. For smoothing, only vertices parallel to the boundary are taken into account, creating this effect. Reviewed By: sergey Differential Revision: https://developer.blender.org/D9204
2020-09-18Unify all XYZ symmetry options using Mesh SymmetryPablo Dobarro
This adds XYZ symmetry as a property of meshes and updates all modes to use the mesh symmetry by default to have a consistent tool behavior between all modes and when switching objects. Reviewed By: brecht, mano-wii, campbellbarton Maniphest Tasks: T79785 Differential Revision: https://developer.blender.org/D8587
2020-09-10Fix T79754: Boundary Brush crashing with symmetry enabledPablo Dobarro
When creating the boundaries for the symmetry passess, it could happen that a symmetrical vertex is not found inside the radius of the brush. In that case, the function to initialize a new boundary was called with index -1 (BOUNDARY_VERTEX_NONE), so this function should also check that the initial vertex that is going to be used to find the boundary is a valid index. Reviewed By: sergey Maniphest Tasks: T79754 Differential Revision: https://developer.blender.org/D8860
2020-09-07Fix Boundary Brush not working with partially hidden meshesPablo Dobarro
Now when a mesh is partially hidden using Face Sets, the open boundary the hidden geometry produces is also detected by the brush. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8819
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-18Cleanup: rename bdata to boundaryPablo Dobarro
Reviewed By: sergey Differential Revision: https://developer.blender.org/D8556
2020-08-13Fix Boundary Brush symmetry with no constant falloffPablo Dobarro
When using constant falloff symmetry was working fine because the same deformation is applied twice on the same vertices. When using no constant falloffs, the deformation is different between symmetry passes, so vertices need to be separated by symmetry areas to get the right deformation from its symmetry pass without being overwriten by the next one. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8541
2020-08-13Sculpt: Boundary Brush Falloff Types and OffsetPablo Dobarro
This adds the boundary_falloff_type and boundary_offset to control how the falloff of the Boundary Brush is applied. Boundary Origin Offset is the same concept as the Pose Origin offset in the Pose Brush. It is a multiplier that adds extra length to the brush radius to locate the deformation pivot further from the boundary without affecting the falloff. The Falloff type includes Constant (previous default), brush radius, loop and loop and invert. Loop and Loop and Invert can be used to create deformation patterns in a mesh. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8526
2020-08-12Clenaup: Rename random_access_init to random_access_ensurePablo Dobarro
Reviewed By: sergey Differential Revision: https://developer.blender.org/D8529
2020-08-11Cleanup: spellingCampbell Barton
2020-08-10Sculpt: Boundary BrushPablo Dobarro
This brush includes a set of deformation modes designed to deform and control the shape of the mesh boundaries, which are really hard to do with regular sculpt brushes (and even in edit mode). This is useful for creating cloth assets and hard surface base meshes. The brush detects the mesh boundary closest to the active vertex and propagates the deformation using the brush falloff into the mesh. It includes bend, expand, inflate, grab and twist deform modes. The main use cases of this brush are the Bend and Expand deformation modes, which depend on a grid topology to create the best results. In order to do further adjustments and tweaks to the result of these deformation modes, the brush also includes the Inflate, Grab and Twist deformation modes, which do not depend that much on the topology. Grab and Inflate are the same operation that is implemented in the Grab and Inflate tools, they are also available in the boundary brush as producing deformations with regular brushes in these areas is very hard to control. Even if this brush can produce deformations in triangle meshes and meshes with a non-regular quad grid, the more regular and clean the topology is, the better. Most of the assets this brush is intended to deform are always created from a cylindrical or plane quad grid, so it should be fine. Also, its algorithms can be improved in future versions to handle more corner cases and topology patterns. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8356