Age | Commit message (Collapse) | Author |
|
- Don't duplicate the original vertices.
- Free old geometry before allocating the new geometry.
|
|
Follow up on T71865 which only reported the issue for shape keys.
|
|
This was an old bug which could be caused by saving after separating.
Changes from 79b703bb635e made this fail reliably.
Update shape key indices when they may be used again later.
|
|
|
|
Exposed by T71865, while the bug remains this resolves the crash.
|
|
|
|
Also correct some outdated symbol references,
add missing 'name' commands.
|
|
|
|
The calculation of pro_super_r rounded to a non-exact float,
so put in rounding code for the special cases.
|
|
The code changes for custom bevels did not recalculated profiles
in certain non-custom-profile cases after projection plane moves.
|
|
One of the corrections from last cleanup was wrong.
|
|
|
|
Allows to access/transform/restore edit-mode
coordinates in a generic way.
|
|
Custom profiles in bevel allows the profile curve to be controlled by
manually placed control points. Orientation is regularized along
groups of edges, and the 'pipe case' is updated. This commit includes
many updates to comments and changed variable names as well.
A 'cutoff' vertex mesh method is added to bevel in addition to the
existing grid fill option for replacing vertices.
The UI of the bevel modifier and tool are updated and unified.
Also, a 'CurveProfile' widget is added to BKE for defining the profile
in the interface, which may be useful in other situations.
Many thanks to Howard, my mentor for this GSoC project.
Reviewers: howardt, campbellbarton
Differential Revision: https://developer.blender.org/D5516
|
|
|
|
Large objects with many separate pieces became unstably slow
(run for hours and not finish).
The entire original mesh was being duplicated twice per loose part.
In own tests, millions of vertices and thousands of loose parts
now run in around 5-15 seconds.
|
|
the radius is zero)
Merge threshold for remove_doubles was hardcoded, now scaled by depth.
Reviewed By: campbellbarton
Maniphest Tasks: T70560
Differential Revision: https://developer.blender.org/D6001
|
|
|
|
|
|
|
|
Along with the new utility `BM_vert_weld_linked_wire_edges_into_linked_faces`
|
|
|
|
|
|
Actual issue is with triangle beautify,
avoid precision error by scaling the epsilon
by the face area when it's over 1
The mesh in the report was very large (approx 2000 on each side),
causing precision issues with a fixed epsilon.
|
|
Move logic into EDBM_automerge since this is meant to run after
transform and isn't a generic editing operation.
|
|
Ref T66423
Differential revision: https://developer.blender.org/D5562
|
|
|
|
Needed to null terminate list of chain to process width adjustments on.
|
|
|
|
Some statements were split across multiple lines because of their
trailing comments.
In most cases it's clearer to put the comments above.
|
|
merge/dissolve distance is actually a maximum, not a minimum
Reviewers: campbellbarton
Maniphest Tasks: T66922
Differential Revision: https://developer.blender.org/D5462
|
|
Extract from BM_verts_sort_radial_plane & simplify.
|
|
|
|
T68035 by @luzpaz
|
|
Differential Revision: https://developer.blender.org/D3744
|
|
TLS and Settings can be used by other types of parallel 'for loops', so
removing 'Range' from their names.
No functional changes expected here.
|
|
|
|
The special case test for cube-like corner did not work if normals
are flipped.
|
|
|
|
The test for whether or not this was a "pipe" neglected to use
fabsf() around a dot result.
|
|
|
|
|
|
clnor editing code was simply not checking at all whether it has
something to work on... Guess nobody had idea to edit custom normals on
a mesh that has no normals before! :P
This should probably be handled in a poll function too, to completely
disable those tools when there are no faces/loops, but let's keep it to
minimal changes at that point.
|
|
Merge code will generate temp normal editing data for affected loops,
but since it will later (by setting some edges/faces to smooth) alter
and extend affected clnor spaces, it will also need temp normal editing
data for some other loops around those vertices...
Using those clnor editing data in that code is a bit of an abuse, but on
the other hand that struct stores exactly what we need.
So simply added an option to generate that editing data for all clnors
of affected vertices.
|
|
|
|
|
|
|
|
Fixes Godot exporter issue reported in T65285.
|
|
Automated using clang-tidy.
|
|
|