Age | Commit message (Collapse) | Author |
|
We had a mix of BKE_view_layer_base_select (harmless), and places where
we simply set the BASE_SELECTED flag with no regard to its selectable
state.
|
|
The correct fix should be to use ED_object_base_select() but I'm leaving
this to a separate pass.
|
|
Was unconditionnaly behaving that way, now use proper common setting to
control whether we should deselect everything when clicking on an empty
area.
Part of T57918.
|
|
- Move connected & projected into individual toggles.
- Top-level proportional editing button now only toggles.
- Use popover for proportional edit-mode falloff and options.
Note that it's no longer possible to toggle connected via key bindings,
although this could be supported again if it's needed.
Resolves T58081
|
|
When the modifier uses vertex groups, the set of the bones it actually
needs is precisely defined by the set of the group names. If envelopes
are enabled, this refinement is not available, because any bone can
potentially be used.
This can be used in the dependency graph construction to allow objects
deformed by a part of the armature to be used in constraints on other
bones, e.g. for placing cartoon-style face elements on top of the body
mesh via Shrinkwrap constraints.
Since the list of vertex group names is now used as an input by
the dependency graph, adding/removing/renaming groups should now
be triggering a graph rebuild.
Differential Revision: https://developer.blender.org/D4715
|
|
There was a double loop when drawing the offscreen data for the fill tool. This loop did an exponential drawing, slowing a lot the process.
For example, one file was using 7.39 seconds and now use 1.20 or less to do the same process.
The fix is more noticeable with big files, reducing exponentially the time used by the tool. For very simple files the speed change can be unnoticeable.
Aso fixed a hidden bug with stroke opacity that it was unnoticeable due the double loop.
|
|
Enable guides only for Draw tool.
|
|
|
|
|
|
Actually, the static functions had the same name used for grease pencil.
Now, the annotation functions have a different prefix.
|
|
|
|
|
|
|
|
This commit tries to fix the rotation problem when the parent is at layer level.
The problem was the object location was not used, so all object not in origin got weird transformations.
|
|
This was already supported in Fill, but not in Strokes. This adds more artistic options when use textured strokes.
|
|
working properly
Only add missing events after first point is added.
|
|
|
|
|
|
Apply clang format as proposed in T53211.
For details on usage and instructions for migrating branches
without conflicts, see:
https://wiki.blender.org/wiki/Tools/ClangFormat
|
|
|
|
This operator works similar to mesh operator but for Stroke and Points data.
Also minor cleanup in Normalize operator.
|
|
Also check this flag in operators.
Note: This is required for the development of the new Normalize All operator.
|
|
This works similar to mesh operator, but using Stroke and Points data.
|
|
Tested to work on Linux and macOS.
This will be enabled once all platforms are verified.
See D4684
|
|
This commit adds support for drawing Dots strokes with a gradient factor to get artistic effects like watercolor.
Currently, the option is only supported by Dots materials, and in the future will be added to line strokes, but now there is a limitation on drawing engine and we will keep disabled on Line materials.
Also, added the option to align Dots and Boxes strokes textures aligned with the drawing path to get more fluid strokes.
|
|
No functional change, this adds LIB definition and args to cmake files.
Without this it's difficult to migrate away from 'BLENDER_SORTED_LIBS'
since there are many platforms/configurations that could break when
changing linking order.
Manually add and enable WITHOUT_SORTED_LIBS to try building
without sorted libs (currently fails since all variables are empty).
This check will eventually be removed.
See T46725.
|
|
Use doxy references to function and enums,
also correct some names which became out of sync.
|
|
Previously B-Bone deformation mapped every vertex to just one
B-Bone segment. This results in abrupt transformation differences
between the sides of each threshold plane, reducing the quality
of B-Bone deformation and making the use of shape keys impractical.
This commit replaces this approach with a linear blend between
the two closest segment transformations, effectively representing
the B-Bone as two weight-blended plain bones for each vertex.
In order to distribute the interpolation more evenly along the
bone, segment matrices for deformation are now computed at points
between the segments and at the ends of the B-Bone. The computation
also uses the true tangents of the Bezier curve for the orientation.
The nodes at the end of the bone require some special handling to
deal with zero-length Bezier handles caused by a zero ease value.
The Copy Transforms constraint now also smoothly interpolates
rotation and scaling along the bone shape when enabled.
The initial version of the patch was submitted by @Sam200.
Differential Revision: https://developer.blender.org/D4635
|
|
|
|
Before, there was a hacky code for Image editor when the image was empty.
Now, all 2D editors are locked to view and when you Move or Zoom, the stroke moves.
This is a fix of T63402.
Still pending if we add more options to 2D editors, but at least now, we have something consistent.
|
|
|
|
The term 'old' isn't very meaningful, follow naming for existing
code that updates data.
|
|
|
|
|
|
The problem was the colors were not converted and the annotation flag was not enabled.
Note: For Scene data (View3D) there is a convert operator.
|
|
- The ambiguous term 'handle' was used where 'ensure'
is typically used (get or add when missing).
- Rename `current` to `active`, all `current` functions which were
also ensuring.
- Clarify what is being operated on, using `BKE_gpencil_object_*` for
objects, `BKE_gpencil_brush_*` for brushes.
|
|
|
|
When drawing in big files, the first points of the stroke were not smooth because the system was doing a copy of the depsgraph datablock.
Now, the depsgraph is not updated at the beginning and the feeling is far better, especially for big files.
To avoid the copy, the original datablock is used while drawing, because it's faster the lookup of the original data, than a full datablock copy.
Also some cleanup of the code.
|
|
|
|
|
|
In extrude operator when the point was added, the weight data pointer was wrongly connected to old pointer.
Now, when move the data, the pointer is moved, but when a new point is added, the memory is duplicated to keep separated copies of the pointer.
This is related T62872
Thanks to @sergey for his help fixing this bug.
|
|
|
|
The old logic was working if the eraser was moved towards the end of the stroke, but got ugly results when the eraser was done towards the start of the stroke.
|
|
The low limit was not needed in the loop.
|
|
Author of the patch: Robert Guetzkow (@rjg)
|
|
For very thin strokes with low pressure, the low limit value was too high.
|
|
|
|
Now, the last point is managed separately in order to get smoother transition.
|
|
Reduce double function calling.
|
|
|