Age | Commit message (Collapse) | Author |
|
Disclaimer: This is a work-in-progress, to find best and optimal
workflow, user interface, defaults, and so on.
To test the new functionality:
1. Enable proportional editing.
2. Grab marker.
The expected behavior is that in this configuration the transform
will be smoothly propagated up to keyframe or up to end of tracked
segment (whatever happens sooner).
Allows to address issue of sudden jump in track when correcting
sliding marker.
Differential Revision: https://developer.blender.org/D2771
|
|
The previous spelling cleanup did not catch this, so didn't the
review of the coming proportional editing code change.
|
|
For the most part, this just adds boilerplate code for volume support in geometry nodes:
* Add `VolumeComponent` next to `MeshComponent`, etc.
* Support `VolumeComponent` in depsgraph object iterator.
Furthermore, I added initial volume support in a few nodes:
* The Object Info node outputs an object instance when the input is a volume object
(that will be the same for mesh objects soonish, to avoid copies).
* Support transforming a `VolumeComponent` in the Transform node.
* Support the `VolumeComponent` in Join Geometry nodes, but only when just one of the
inputs has a volume component for now.
Right now, there is no way to create a `VolumeComponent`, because the Object Info node
outputs an object instance. The `VolumeComponent` will be necessary for upcoming nodes,
which will generate volumes on the fly.
Viewport selection does not work correctly with `VolumeComponent`s currently. I don't
know why that is. That can be figured out a bit later, once we can actually create
new volumes in geometry nodes.
Ref T84604.
Differential Revision: https://developer.blender.org/D10147
|
|
|
|
Uninitialized stack memory was being re-used in a loop.
Error in original commit from 04f81c8225f28ba9722cc06dc7f2d8a4d72a3fa3
This happened to work as the same memory location was re-used
between iterations and not overwritten.
|
|
|
|
|
|
|
|
|
|
|
|
The manipulation of rot/scale was simply not implemented.
|
|
Differential Revision: https://developer.blender.org/D10125
|
|
Using primitive drawings, the point UV rotation was not initialized.
|
|
local orientation
In fact, the drawing was that of the local contraint axis (which is
summarized so as not to fill the screen with too much information).
Use the local contraint axis only when more than one object is selected.
|
|
This reverts commit 54f248fa87afd4836fb7154056cd0e8d920401f1.
And fixes T84259.
Apparently the ideal behavior was the previous one.
|
|
|
|
|
|
|
|
A regression since 2.80: need to use evaluated mask to calculate
its bounds. Non-evaluated mask does not contain state for the
current frame, so iterating over control points of the original
mask gives points state from the time they were edited last (aka,
not affected by the animation).
|
|
- Zooming out a lot faster than zooming in,
it had the wrong aspect ratio, make all the preparations
with the factors instead of deltas.
- Improved following the `zoom_invert`
(should not apply to `MOUSEZOOM`) and "trackpad natural scroll"
preferences.
- `zoomfac` adjustment, same as in `view_zoomdrag_modal`.
Ref D8686
|
|
It was already fixed for the mouse in
bcda8cc89b88c999ff64edcc19973d6289bcbf2a, T65837
now the same logic is applied for the track-pad.
Ref D8685
|
|
|
|
|
|
- Rename to "Link/Transfer Data".
- Move Mesh Data Transfer operators here from the Relations sub-menu.
- Clarify which operations links to, copies or transfers/projects
data using Link, Copy and Transfer leading text.
- Re-order contents to fit each category and add separators.
- Add enum tool-tips.
Reviewed By: Blendify, campbellbarton pablovazquez, mont29
Ref D10090
|
|
|
|
|
|
|
|
|
|
The cursor-plane was too dense/bright when approaching view alignment.
|
|
|
|
|
|
|
|
When the mouse cursor is inside the UV face,
extend the selection threshold.
This means when zoomed in, a face can always be selected when the cursor
is inside it.
In the case of multiple overlapping faces - the face with the closest
center is used.
----
Prior to 246efd7286f6187e4dd4b3edcc79cccb1746bb1d, the UV selection
threshold was scaled by the zoom level, so selecting a face when zoomed
in close would often often select faces even when the on-screen center
was outside the intended threshold.
Having a zoom-independent threshold may require more precision than
users are used to.
This change addresses this.
|
|
Splitting assignments between functions complicates refactoring.
Also rename 'hit_final' to 'hit', since there are no longer a local
'hit' variable defined in these functions.
|
|
|
|
|
|
Comment blocks not conforming to convention.
|
|
|
|
|
|
Resolves 'cmake_consistency_check' reports.
|
|
Committed by accident when SEQ_utils.h was also created.
|
|
This commit moves runtime-only variables from the `SpaceNode`
DNA struct to a private struct in `node_intern.h`. Before, it was hard
to tell which data needed to be saved in files, this should make it
more clear.
Node that the `edittree` field is basically a runtime variable, since
it's set from the `treepath` list on read, but moving it would require
some more invasive changes that I don't think are worth it right now.
Also, not all of the moved variables were explicitly cleared on read--
`aspect` is set at the start of a redraw, `cursor` is set in a region
callback, and `recalc` was used as an update flag.
Differential Revision: https://developer.blender.org/D10141
|
|
|
|
Things like pointers to particle systems, or softbody data being stored
outside of its modifier, make it impossible for internal modifier copy
data code to be self-contained currently. It requires extra processing.
In existing code this was handled in several different places, in
several ways, and alltogether fairly inconsistently. Some cases were
even not properly handled, causing e.g. crashes as in T82945.
This commit addresses those issues by:
* Adding comments about the hackish/unsafe parts `psys` implies when
copying some modifier data (since we need to ensure particle system
copying and remapping of those pointers separately).
* Adding as-best-as-possible handling of those cases to
`BKE_object_copy_modifier` (note that it remains fragile, but is
expected to behave 'good enough' in any practical usecase).
* Remove special handling for specific editor code
(`copy_or_reuse_particle_system`). This should never have been
accepted in ED code area, and is now handled by
`BKE_object_copy_modifier`.
* Factorize copying of the whole modifier stack into new
`BKE_object_modifier_stack_copy`, now used by both `object_copy_data`
and `BKE_object_link_modifiers`.
Note that this implies that `BKE_object_copy_modifier` and
`BKE_object_copy_gpencil_modifier` are now to be used exclusively to
copy single modifiers. Full modifier stack copy should always use
`BKE_object_modifier_stack_copy` instead.
Fix T82945: Crash when dragging modifiers in Outliner.
Maniphest Tasks: T82945
Differential Revision: https://developer.blender.org/D10148
|
|
Things like pointers to particle systems, or softbody data being stored
outside of its modifier, make it impossible for internal modifier copy
data code to be self-contained currently. It requires extra processing.
In existing code this was handled in several different places, in
several ways, and alltogether fairly inconsistently. Some cases were
even not properly handled, causing e.g. crashes as in T82945.
This commit addresses those issues by:
* Adding comments about the hackish/unsafe parts `psys` implies when
copying some modifier data (since we need to ensure particle system
copying and remapping of those pointers separately).
* Adding as-best-as-possible handling of those cases to
`BKE_object_copy_modifier` (note that it remains fragile, but is
expected to behave 'good enough' in any practical usecase).
* Remove special handling for specific editor code
(`copy_or_reuse_particle_system`). This should never have been
accepted in ED code area, and is now handled by
`BKE_object_copy_modifier`.
* Factorize copying of the whole modifier stack into new
`BKE_object_modifier_stack_copy`, now used by both `object_copy_data`
and `BKE_object_link_modifiers`.
Note that this implies that `BKE_object_copy_modifier` and
`BKE_object_copy_gpencil_modifier` are now to be used exclusively to
copy single modifiers. Full modifier stack copy should always use
`BKE_object_modifier_stack_copy` instead.
Fix T82945: Crash when dragging modifiers in Outliner.
Maniphest Tasks: T82945
Differential Revision: https://developer.blender.org/D10148
|
|
When dragging an object into the 3D View, e.g. from the Outliner or the Asset
Browser, other objects wouldn't get deselected. That differs from what other
drop operations do, which create a new object. They deselect other objects in a
lower-level function, which happens to not be called for just dropping objects.
So I guess this is an oversight.
Old behavior was also a bit annoying because users seem to expect this to
deselect.
|
|
|
|
Caused by rBbbb2e0614fc3.
Oversight to not take the remapped framelength into account.
Maniphest Tasks: T84784
Differential Revision: https://developer.blender.org/D10134
|
|
|
|
Caused by rB957e292c5864.
Now just skip unconnected sockets.
Maniphest Tasks: T84823
Differential Revision: https://developer.blender.org/D10137
|