Age | Commit message (Collapse) | Author |
|
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
|
|
This addresses warnings from Clang-Tidy's `readability-else-after-return`
rule in the `source/blender/editors/mesh` module.
No functional changes.
|
|
|
|
|
|
This was returning true in edit mode, causing the crash
Reviewed By: jbakker
Maniphest Tasks: T76488
Differential Revision: https://developer.blender.org/D7645
|
|
|
|
|
|
Mask extract modifies the topology when adding the boundary loop, so
previous face sets may not be correct in the new mesh. Remove the face
sets datalayer and let sculpt mode rebuild it when entering sculpt mode
in the new object.
Reviewed By: jbakker
Differential Revision: https://developer.blender.org/D7129
|
|
The previous behaivour didn't make sense as sculpt mode was still active
when switching to the new object, so it was rendering inconrrectly.
Reviewed By: jbakker
Differential Revision: https://developer.blender.org/D7130
|
|
|
|
Was crashing SculptSession data will not longer be valid if the total
number of polys is modified when rendering the mesh again.
This deletes all face sets in the mesh when slicing the mask. I'll try
to add code to generate a new face set in with faces that are created
when filling the holes, but for now this avoids the crash.
Reviewed By: brecht
Maniphest Tasks: T74500
Differential Revision: https://developer.blender.org/D7049
|
|
|
|
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.
|
|
This patch applies the original object scale to the coordinates of the
extracted mask mesh. Without this patch, the mesh was no taking the
original object scale into account and the shrinkwrap will fail.
The other solution would be copying the objecty scale to the new
extracted mask object, but I would like to avoid entering sculpt mode
with scaled objects as it may produce wrong behaviors in some tools.
Reviewed By: jbakker
Maniphest Tasks: T71373
Differential Revision: https://developer.blender.org/D6207
|
|
This was causing a crash when the mesh does not have the mask data
initialized. I also added the same check to mask extract as it works the
same way.
Reviewed By: jbakker
Maniphest Tasks: T72830
Differential Revision: https://developer.blender.org/D6513
|
|
`CTX_data_active_object(C)` returns `NULL` when there is no active object,
and this was not tested for in the code.
|
|
This operator is similar to Mask Extract, but it deletes the masked points on the original mesh and fills the holes. This can be useful for quickly trimming or splitting an object.
This is not meant to be the main trimming tool of sculpt mode. I plan to have a set of trimming tools based on geometry booleans (trim box, lasso, line, bisect...) but in some cases doing a mask selection is more convenient.
Reviewed By: jbakker
Differential Revision: https://developer.blender.org/D6160
|
|
Reviewed By: jbakker
Maniphest Tasks: T70687
Differential Revision: https://developer.blender.org/D6042
|
|
This commit fixes an assert in mesh_runtime_check_normals_valid
Reviewed By: jbakker
Maniphest Tasks: T70544
Differential Revision: https://developer.blender.org/D6013
|
|
- Avoid per-vertex custom-data lookup
- Break once a face has a mask vertex.
|
|
|
|
Reviewed By: brecht
Maniphest Tasks: T70102
Differential Revision: https://developer.blender.org/D5978
|
|
Modifier stack evaluation would copy mesh settings other than mesh topology
automatically, outside of the individual modifier evaluation. This leads to hard
to understand code, and makes it unclear which settings are available in following
modifiers, and which only after the entire stack is evaluated.
Now every modifier is responsible to ensure the mesh it outputs preserves materials,
texture space and other settings, or alters them as needed.
Fixes T64739: incorrect texture space for various modifiers
Differential Revision: https://developer.blender.org/D5808
|
|
space issues"
This reverts commit e7a514369fe700dcc5a1fe433c8f709ed9595ded, it introduces
a bug in selection in edit mode.
Fixes T70103: can't select extruded Vertex
Ref T64739
|
|
Modifier stack evaluation would copy mesh settings other than mesh topology
automatically, outside of the individual modifier evaluation. This leads to hard
to understand code, and makes it unclear which settings are available in following
modifiers, and which only after the entire stack is evaluated.
Now every modifier is responsible to ensure the mesh it outputs preserves materials,
texture space and other settings, or alters them as needed.
Fixes T64739: incorrect texture space for various modifiers
Differential Revision: https://developer.blender.org/D5808
|
|
This operator extracts the paint mask to a new mesh object. It can extract the paint mask creating a boundary loop in the geometry, making it ready for adding a subdivision surface modifier.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D5384
|