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
The current "Select Linked" operator works based on mouse position and
makes no sense to call from the menus and was removed in rB536055e1ee0b.
This patch adds an operator independent from mouse position that just
selects all bones in relation to selected bones (and adds back menu
entries, adds keymap entry CTRL+L).
The original operator is renamed to 'select_linked_pick' internally
(this is now more in line to how "Select Linked" works for meshes,
curves etc)
ref T76071
Maniphest Tasks: T76071
Differential Revision: https://developer.blender.org/D7542
There are cases when a user can accidentally assign an operator to toggle an
invalid property to e.g. left click, which shows Python errors to the users.
Rather than throw an error and e.g. break 3D viewport selection for the user,
just print an error to the console.
The root cause of such bugs should be fixed as well, but a working Blender
is most important here.
The operator in its current state is based on mouse position and doesnt
make sense to be called from a menu.
(In fact it should be called 'select_linked_pick' internally and a
separate 'select_linked' should be implemented similar to how "Select
Linked" works for meshes, curves etc -- see D7542 for this)
Note: We had the same thing for particles recently:
rBdd9dfadaac9b: remove "Select Linked" from the particle select and
context menu
rB5ca7c85e105d: Particle editmode: add mouse independent "Select Linked"
operator
Fixes T76071
Maniphest Tasks: T76071
Differential Revision: https://developer.blender.org/D7543
Sequencer related properties were not grouped together, and it wasn't
clear that the disk cache settings were about the sequencer. Now moved
sequencer settings into own panel.
Note that given how experimental is working currently, I had to rename
and inverse the effect of the experimental undo flag, which will now
instead activate legacy code when set.
Use a regular context menu as a fallback for the outliner.
If there are no specific actions for the item under the cursor,
fall through to opening a regular menu.
This lets menu search find the context menu items which were previously
unavailable as menu search wont run operators.
The Layer brush was in Blender before 2.81, when the sculpt API was
introduced. It had a huge amount of bugs and glitches which made it
almost unusable for anything but the most trivial cases. Also, it needed
some hacks in the code just to support the persistent base.
The brush was completely rewritten using the Sculpt API. It fulfills the
same use case as the old one, but it has:
- All previous artifacts fixed
- Simpler code
- Persistent base now works with multires thanks to the sculpt API
- Small cursor widget to preview the layer height
- More controllable and smoother strength and deformation
- More correct masking support
- More predictable invert support. When using persistent base, the brush invert mode resets to layer height 0, instead of jumping from +1 to -1. The brush can still be inverted in the brush direction property.
Reviewed By: jbakker
Differential Revision: https://developer.blender.org/D7147
This mesh filter sharpens and smooths the mesh based on its curvature,
resulting in pinching hard edges and polishing flat surfaces. It fixes
most of the artifacts of the voxel remesher and those produced when
sculpting hard surfaces and stylized models with creasing and flattening
brushes.
It needs and accumulate_displacement step before each filter iteration which
can't be multithreaded in an easy way (it would need something to sync the
threads when modifying the data of neighbors in a different node), but this
does not affect performance in a significant way.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D7335
Add an option to solidify complex which will make faces which have thickness
controlled by vertex weights flat/even, and parallel to their original face.
For each face it uses the minimal weight assigned to its vertices to control
the thickness.
This will help users for example in architecture or basic CAD design by finally
making solidify work there at all if altering thickness is needed.
Differential Revision: https://developer.blender.org/D7340
Reviewed and minor cleanups by Batien Montagne (@mont29).
Adds a slider to solidify which allows the user to add bevel weight on the outside
or remove bevel weight from the inside.
Also includes a very small improvment for working with subsurface modifier where
the rim edge in complex solidify will now also have a chance to get a crease if
there is only two adjacent edges.
Differential Revision: https://developer.blender.org/D7334
Reviewing and minor cleanups: Bastien Montagne (@mont29).
* Implemented the algortihm that would merge vertices to the weighted
center between them.
* Exposed the merge threshold to the user.
The new default tolerance is 0.0001 (versionning code ensures that
previous default value remains in use to avoid any change in existing
files).
Review and minor changes/cleanups from Bastien Montagne (@mont29).
This patch adds the option to use an armature bone in place of an object for texture mask coordinates.
This affects the 3 vertex weight modifiers, the displace modifier, the warp modifier, and the wave modifier.
With minor changes from Bastien Montagne (@mont29).
Differential Revision: https://developer.blender.org/D7348
Removal of 'Translation' checkbox. Enable translation options when selecting non-English languages.
Differential Revision: https://developer.blender.org/D7210
Reviewed by Brecht Van Lommel
Feature can be enabled or disabled in timeline view menu item "Show F-Curves".
Author a.monti
Reviewed By: ISS
Differential Revision: https://developer.blender.org/D7205
- Adds select menu
- Removes undo/redo controls
- Adds delete menu
- Refactor
- Combines font and text menu
The goal is to match other edit menus better and match the text editor.
In Blender 2.81 we update and draw all nodes inside the view planes.
When navigating with a pen tablet after an operation that tags the whole
mesh to update (like undo or inverting the mask), this introduces some
lag as nodes are updating when they enter the view. The viewport is not
fully responsive again until all nodes have entered the view after the
operation.
This commit delays nodes updates until the view navigation stops, so the
viewport navigation is always fully responsive. This introduces some
artifacts while navigating, so it can be disabled if you don't want to
see them.
I'm storing the update planes in the PBVH. This way I can add support
for some tools to update in real-time only the nodes inside this plane
while running the operator, like the mesh filter.
Reviewed By: jbakker
Differential Revision: https://developer.blender.org/D6269
This adds the automasking options to the Sculpt Tool options in a way
that they affect all brushes. This is more convenient when working with
some of these options while switching brushes as they don't need to be
enabled/disabled per brush.
An automasking option is enabled if it is enabled in the brush or in the
sculpt options.
Reviewed By: jbakker
Differential Revision: https://developer.blender.org/D7304
With this brush option it is possible to mask the boundary vertices of
all face sets. This is especially useful in the cloth brush, where face
sets can be used to simulate seams between different patches of cloth
and produce different patterns and effects.
Reviewed By: jbakker
Differential Revision: https://developer.blender.org/D7230
This adds the Voxel Mode to the current remesh modifier. It works
exactly the same way as the voxel remesh operator and uses the same
properties to control the remeshing. We can exand this with more options
in the future (fix poles, reprojection...)
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D7292
As the 'M' key is free, it's convenient to use for the merge menu,
especially since this contains "Merge by Distance",
a frequently used action.
Use 'Alt-M' for a new split menu, following our convention of Alt being
used for opposite functionality.
Also move merge/split menu's into the "Mesh" menu as neither operate
solely on a single mesh element type.
This was crashing, when looking into a fix I noticed that it gave
hap-hazard results dissolving past forks in the parent/child hierarchy
arbitrarily following one chain.
This functionality is almost identical to "dissolve" which delimits
forks in the chain predictably.
So remove this in favor of dissolve (available from the delete menu).