Age | Commit message (Collapse) | Author |
|
|
|
The `BM_mesh_bm_to_me()` function copies shape keys from the BMesh to
the Mesh. However, it tries to copy the same number of shape keys as are
defined on the target mesh. Since the target mesh does not necessarily
have the same number of shape keys as the BMesh, this would crash if the
target Mesh has more.
Found while performing some tests for {D7785}.
Differential Revision: https://developer.blender.org/D7818
Reviewed by: brecht
|
|
|
|
Don't use the cube corner special case when the offsets are different
for the three edges involved. The generic VMesh for this situation isn't
perfect, but it's much better than a failed cube corner VMesh.
Tests pass.
|
|
|
|
Don't use the cube corner special case when the offsets are different
for the three edges involved. The generic VMesh for this situation isn't
perfect, but it's much better than a failed cube corner VMesh.
Tests pass.
|
|
|
|
|
|
|
|
Surrounding includes with an 'extern "C"' block is not necessary anymore.
Also that made it harder to add any C++ code to some headers, or include headers
that have "optional" C++ code like `MEM_guardedalloc.h`.
I tested compilation on linux and windows (and got help from @LazyDodo).
If this still breaks compilation due to some linker error, the header containing
the symbol in question is probably missing an 'extern "C"' block.
Differential Revision: https://developer.blender.org/D7653
|
|
|
|
Was flipping around the 0-1 range, now (optionally) flip around each tile.
Also added this option for BMesh bmo_mirror.
Reviewed By: campbellbarton
Maniphest Tasks: T75793
Differential Revision: https://developer.blender.org/D7460
|
|
|
|
|
|
|
|
|
|
|
|
It occurred when an edge was collapsed into a vert that was not part of it.
This is common when the distance for merging is relatively large.
|
|
It occurred when an edge was collapsed into a vert that was not part of it.
This is common when the distance for merging is relatively large.
|
|
|
|
|
|
Edit-mesh interactive redo reset the meshes shape-key index.
Also copy the selection mode when copying meshes.
|
|
|
|
Starting select linked failed when the selected vertex or edge
was it's self delimiting.
Support using these elements for linked select
as long as they're part of an isolated selection.
|
|
|
|
Resolves regression from 2.7x
|
|
|
|
|
|
Note this only changes cases where the variable was declared inside
the for loop. To handle it outside as well is a different challenge.
Differential Revision: https://developer.blender.org/D7320
|
|
|
|
|
|
|
|
|
|
|
|
In some cases moved the checks into asserts,
to ensure changes in the future don't cause
the checks to become necessary again.
|
|
While it might be handy to have type-less functionality which is
similar to how C++ math is implemented it can not be easily achieved
with just preprocessor in a way which does not have side-effects on
wrong usage.
There macros where often used on a non-trivial expression, and there
was at least one usage where it was causing an actual side effect/bug
on Windows (see change around square_f(sh[index++]) in studiolight.c).
For such cases it is handy to have a function which is guaranteed to
have zero side-effects. The motivation behind actually removing the
macros is that there is already a way to do similar calculation. Also,
not having such macros is a way to guarantee that its usage is not
changed in a way which have side-effects and that it's not used as an
inspiration for cases where it should not be used.
Differential Revision: https://developer.blender.org/D7051
|
|
|
|
- Use 'BKE_object_defgroup' prefix for object functions.
- Rename 'defvert_verify_index' to 'defvert_ensure_index'
since this adds the group if it isn't found.
|
|
|
|
When beveling architectural objects like baseboards or crown mouldings that
may consist of multiple islands, it's useful if the orientation is at least
conistent.
This changes the arbitrary decision of how the orientation should start at a
chain beginning to use the highest side of the profile in the Z direction.
Reviewed By: howardt
Differential Revision: https://developer.blender.org/D6946
|
|
Also changed signature of bevel function to take integer
for segments instead of float, which is just wrong.
|
|
|
|
Also remove unused errors.
|
|
When a vertex between two edges is being collapsed,
it's important that edges between delimiting faces use the
angle between edges without scaling it down.
While faces with different materials wont ever be merged into a single
face, all the detail between the two faces may be removed.
|
|
- Use doxy sections
- Don't document implementation details in doxy comments.
|
|
|
|
|
|
This prevented indices from being set to temporary values,
which is needed in some situations.
|
|
|
|
- Replace 'unsigned' used on it's own with 'uint'.
- Replace 'unsigned const char' with 'const uchar'.
|