This patch adds paint symmetry support to Quadriflow. It bisects and mirrors the input and the output from the remesher to build the final mesh using the preserve boundary option.
This can be considered a new feature, but I think this is rather important to have for 2.81 because most of the new sculpt tools rely on topology symmetry to keep the symmetry of the sculpt. It is also an important performance improvement in Quadriflow because it only needs to process half of the mesh with half the resolution.
Details
Diff Detail
- Repository
- rB Blender
- Branch
- quadriflow-symmetry (branched from master)
- Build Status
Buildable 5037 Build 5037: arc lint + arc unit
Event Timeline
| source/blender/editors/object/object_remesh.c | ||
|---|---|---|
| 300 | Looks like a perfect candidate for using a new function instead of a comment. Same below. | |
| source/blender/editors/object/object_remesh.c | ||
|---|---|---|
| 416 | Perhaps we could just default to "use object Origin and X-mirror" if we are not in sculpt mode? I'm guessing that the symmetry option could be useful to have available outside of sculpt mode too. | |
| source/blender/blenkernel/BKE_mirror.h | ||
|---|---|---|
| 16 | It is not always there, but Copyright should contain year of first publication. | |
| source/blender/blenkernel/intern/mirror.c | ||
| 41 | Please clean up unneeded includes. | |
| source/blender/editors/object/object_remesh.c | ||
| 182 | mirror_planes is a better name and use an enum for this. | |
| 237 | Add this as a define. It is used in multiple places and needs to be in sync. | |
| 243 | we use mat or m4 for matrix. | |
| 255 | this does not need any matrix at all. | |
| 300 | Memory leak | |
| source/blender/editors/object/object_remesh.c | ||
|---|---|---|
| 182 | The variable symm and this way of iterating over the symmetry axes is used a lot in the sculpt code. How can I use a enum here? | |
| source/blender/blenkernel/BKE_mirror.h | ||
|---|---|---|
| 29 | Gives warning Also where it is used. | |
| source/blender/editors/object/object_remesh.c | ||
| 182 | Could be but char symm is bad code style and bad naming. For example it could look like Same code, only more clear what the variables/fields do. | |