Age | Commit message (Collapse) | Author |
|
Use _fn as a suffix for callbacks.
|
|
The check for a null active object was after trying to retrieve the active
modifier from the object.
|
|
|
|
|
|
introduced during cleanup.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Add `BKE_pose_apply_action(object, action, anim_eval_context)` function
and expose in RNA as `Pose.apply_action(action, evaluation_time)`.
This makes it possible to do the following:
- Have a rig in pose mode.
- Select a subset of the bones.
- Have some Action loaded that contains the pose you want to apply.
- Run `C.object.pose.apply_pose_from_action(D.actions['PoseName'])`
- The selected bones are now posed as determined by the Action.
Just like Blender's current pose library, having no bones selected acts
the same as having all bones selected.
Manifest Task: T86159
Reviewed By: Severin
Differential Revision: https://developer.blender.org/D10578
|
|
This makes it easier to add an implementation that can
be used in Geometry Nodes.
There should be no functional changes.
|
|
Add an RNA function `activate_asset_by_id(asset_id: ID, deferred: bool)`
to the File Browser space type, which intended to be used to activate an
asset's entry as identified by its `ID *`. Calling it changes the active
asset, but only if the given ID can actually be found.
The activation can be deferred (by passing `deferred=True`) until the
next refresh operation has finished. This is necessary when an asset has
just been added, as it will be loaded by the filebrowser in a background
job.
Reviewed By: Severin
Differential Revision: https://developer.blender.org/D10549
|
|
Continuation of work in 2e221de4ceee and 249e4df110e0. Now the tree-element
types have to be ported one by one. This is probably the most straight forward
type to port.
|
|
|
|
|
|
|
|
Gave warning on Windows platform. There are more of these cases.
|
|
|
|
These variables track the wmWindow.event_queue state,
however they were used in a way that wasn't correct.
- check_drag & check_click from wmWindow.eventstate
were used to track the click/drag status of events handled in
wmWindow.event_queue.
- Event's in the queue read from wmEvent.check_drag.
- Once a drag action was detected, wmWindow.eventstate.check_drag
was disabled.
Disabling drag in the event state would not change the drag state
for values already in the event queue.
Simplify logic by moving these values into the window,
so there is one place these variables are tracked.
|
|
It is quite common to high framerate video with modern cameras. To make
it easier to edit this footage new framerate presets are added and the
soft limit increased.
Note there is a bug with preset ordering, Blender thinks "120" goes
before "24" this bug needs to be fixed before these changes can be
merged.
Differential Revision: https://developer.blender.org/D10553
|
|
The term queue isn't very descruptive on it's own, use:
- wmWindow.event_queue
- wmWindowManager.notifier_queue
|
|
|
|
Reserve `event` for wmEvent.
|
|
|
|
Following naming convention of most operators.
|
|
Using both evt and event together was confusing.
Renamed:
- event_state <- evt
- event_state_other <- oevt
- event_other <- oevent
- win_other <- owin
|
|
Now, if the Autokey is not enabled, a new frame is not created and it is used the last active one. If no active frame, a message is displayed and the operation is canceled.
This is a common request for 2D artists.
Also, grease pencil was not working as Blender does in other areas.
Reviewed By: pepeland
Differential Revision: https://developer.blender.org/D10557
|
|
provide a UVMap
This was reported for remesh and skin modifiers.
These dont preserve UV layers (and probably cannot in a reasonable way),
so instead let the UV Project modifier create a new (equally named) UV
layer (as was suggested by @brecht in T59376).
Maniphest Tasks: T59376
Differential Revision: https://developer.blender.org/D10617
|
|
The `MAX_LIBARRAY` define was an annoying doublon to the `INDEX_ID_MAX` enum value
now defined in `DNA_ID.h`, and it is no more useful.
And comments were somewhat outdated. Also added an explanation about
chosen order for the `INDEX_ID_<IDTYPE>` order.
|
|
This is a simple heuristic that seems to improve the search results in many cases.
Differential Revision: https://developer.blender.org/D10618
|
|
This adds a couple more utility methods to various node tree ref types.
Also `InternalLinkRef` has been added to get simpler access to internal links.
|
|
|
|
See comment in code for more details.
Differential Revision: https://developer.blender.org/D10615
|
|
Pasting nodes can create new id relations, because nodes can reference IDs.
Therefore the depsgraph has to be updated when nodes are pasted.
We could somehow check if the pasted nodes referenced IDs, but I'm not sure
if this complexity is worth it.
|
|
Replace static methods with regular methods.
Now the 'Main' value is taken from the collection.
Needed to support multiple 'Main' instances in Python, see T86183.
|
|
Previously only static methods were supported.
Now C/API functions added to collections can receive a 'self' argument.
|
|
Note that this still does not work when in the node group directly referenced
by the modifier, only in sub-node-groups. This limitation will be removed
at some point.
|
|
This UserPref setting is only used when no path is set yet.
|
|
Saving the startup file now uses "Save Copy", so paths are preserved.
|
|
|
|
This was using fall-back category "Other Options"
which should be kept empty.
|
|
|