Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This was caused by nodeChainIter which is not linear complexity.
Introduce nodeChainIterBackwards to iterate backwards faster.
|
|
The core of the issue here is that 'make single user' functions still
does its own, manual and quite partial, remapping of IDs, which covers
all most common cases but cannot consider *all* possible ID usages
(especially when it comes to drivers or custom properties, that can
essentially point to any kind of data-blocks).
This fix is merely a band-aid, there is no way to fully solve this
without a complete rewrite of that area of code to make use of modern ID
management code.
|
|
|
|
present
Selection state of lattice points as well as their weight were not kept
when going in and out of editmode, code would just copy positions.
Now copy the whole BPoint instead.
Reviewers: campbellbarton
Maniphest Tasks: T70376
Differential Revision: https://developer.blender.org/D5948
|
|
Avoids errors like T70281 slipping through.
|
|
D5932 by @a.monti with edits
|
|
Having a constant FCurve doesn't make sense for drivers; either linear
or Bezier should be used. Since the code is already creating a Bezier
curve, I just added the flag to not look at the user preferences in this
case.
Reviewed by: angavrilov
Differential Revision: https://developer.blender.org/D5921
|
|
working
Since rB78b56fa7d973 we always have to specify a valid step value.
|
|
|
|
Changes to cursors that can be used for painting and sculpting.
Differential Revision: https://developer.blender.org/D5951
Reviewed by Brecht Van Lommel
|
|
This gives better error messages, simplify code.
|
|
|
|
More convenient than comparing strings,
with the advantage that errors don't need to repeat expected values.
|
|
This makes it so that some display related properties of the file
browser state are remembered in the Preferences. Otherwise, users often
end up doing the same set up work over and over again, so this is a
nice way to save users some work.
It's typical for other file browsers to remember their state too, so
another benefit is having a more conventional behavior, meeting user
expectations better.
Some points:
* We currently store: Window size, display type, thumbnail size,
enabled details-columns, sort options, "Show Hidden" option. More can
be added easily.
* No changes are stored to the Preferences if "Auto-save Preferences"
is disabled. This is how Quick Favorites behave too and it's a
reasonable way to make this behavior optional.
* The Preferences are only saved to permanent memory upon closing
Blender, following existing convention of Preferences and Quick
Favorites.
* If settings weren't actually changed, Preference saving is skipped.
* Only temporary file browsers save their state (invoked through
actions like open or save), not regular file browser editors. These
are usually used for different purposes and workflows.
* Removes "Show Thumbnails" Preferences option. It would need some
special handling, possibly introducing bugs. For users, this
simplifies behavior and should make things more predictable.
Left in DNA data in case we decide to bring it back.
Reviewers: brecht, #user_interface, billreynish, campbellbarton
Reviewed By: #user_interface, William Reynish, Campbell Barton, Brecht
van Lommel (quick first pass review in person)
Maniphest Tasks: T69460
Differential Revision: https://developer.blender.org/D5893
|
|
Add a function which clears internal cached operator pointers,
run before reloading scripts.
|
|
This reverts commit ba90d2efa58fe23a87f98e014bcc02ea951a6a49.
This can be resolved without adding a boolean to all operator types
to check if it's "WM_OT_tool_set_by_id".
|
|
|
|
`context_local_shaders_workaround` is only supported on OpenGL 4.1 or higher.
|
|
Also, use Title Caps for labels...
|
|
This commit introduces flags to tag the PBVH nodes as fully masked or unmasked. This is used in do_brush_actions to filter fully masked nodes during a stroke. Other tools can also be updated to use this flags.
Sculpt updates now require a flag to update the mask or the vertex coordinates.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D5935
|
|
Reviewed By: jbakker
Maniphest Tasks: T70385
Differential Revision: https://developer.blender.org/D5945
|
|
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D5947
|
|
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D5923
|
|
Currently, we use the crosshair cursor in Sculpt mode, but not in the other paint modes.
- Sculpt Mode: This crosshair cursor is too weighty.
- Texture, Weight, Vertex Paint: Using the arrow cursor for painting is not right.
This commit makes the following changes:
- Use the new special paint crosshair instead
- Use this cursor in all paint modes, not just Sculpt
Reviewed by: Brecht
Differential Revision: https://developer.blender.org/D5940
|
|
`RNA_property_overridable_get()` need the original RNA property (i.e.
the actual IDProp in case it is one), not the 'proxy' type property
returned by `rna_ensure_property()` for IDProps.
Makes custom properties of library overrides editable at last, now we
only have to keep them overridden values!
|
|
|
|
This reverts commit 9d282d7a8d689a17ae58e94453ae99a41e91b701.
os_unfair_lock requires macOS 10.12 or newer.
|
|
Revert "Sequencer: use Alpha Over blend mode by default"
This reverts commit 7c6c5b40cae47e2ecb0e2ef2a5ca1883270c0023.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D5943
|
|
|
|
This reverts commit 44d042094e21b519b38a3d78761b64bb5ceeb350 and adds a
simpler workaround for just the node links display issue. There are other
issues though so this is not a full workaround.
|
|
|
|
Call SetErrorMode() at startup to prevent error mode dialogs.
Differential Revision: https://developer.blender.org/D5941
Reviewed by Brecht Van Lommel
|
|
Main reason for doing this is that the navigation buttons are very
close to the file list now, making them much faster to reach.
Initially we let the upper bar (the one with the file path, navigation
and display buttons) use full area width, because designs back then had
more horizontal space problems. The designs have changed meanwhile, and
horizontal space is less of an issue.
However, when the file browser is shrunk horizontally, or if it's open
in a small area (e.g. see "Shading" workspace), having the tool region
open brings back the space issues. But even the file list layout becomes
problematic then, and the same issue was present before the new file
browser design, so we've decided this is an acceptable tradeoff.
|
|
|
|
|
|
Also use MEM_SAFE_FREE to simplify code.
|
|
Ref T70295
|
|
Also applies to some other sculpt tools like filter and mask expand.
The full update happens after the paint stroke is finished, so it does not
happen on view navigation, which would cause a delay.
Ref T70295
Differential Revision: https://developer.blender.org/D5922
|
|
This improves performance of some sculpt tools, particularly those that modify
many vertices like filter and mask tools, or use brushes with large radius.
For mask expand it can make updates up to 2x faster on heavy meshes, but for
most tools it's more on the order of 1-1.1x. There are bigger bottlenecks to
solve, like normal updates.
Ref T70295
Differential Revision: https://developer.blender.org/D5926
|
|
This is under the assumptions that each node has enough work to avoid
the threading overhead, while also having a possible variable amount of
work. For example most of the vertices being masked or outside of the
brush radius.
Improves performance by about 10% for tools like mesh filter on an
entire 3 million poly mesh, tested on a quad core.
Ref T68873
|