Blender Git Commits

Blender Git "master" branch commits.

Page: 362 / 5574

March 5, 2021, 15:56 (GMT)
Fix: compilation OpenCL kernels Compositor.

introduced during cleanup.
March 5, 2021, 15:56 (GMT)
Cleanup: Use blender::Vector.
March 5, 2021, 15:35 (GMT)
Animation: add function to apply a pose from an Action

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
March 5, 2021, 15:09 (GMT)
Nodes: move vector rotate node to C++

This makes it easier to add an implementation that can
be used in Geometry Nodes.

There should be no functional changes.
March 5, 2021, 15:08 (GMT)
Fix windows compilation.
March 5, 2021, 14:11 (GMT)
Asset Browser Space API: add `activate_asset_by_id()` function

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
March 5, 2021, 14:05 (GMT)
Cleanup: Libmv, clang-format

Is based on Google style which was used in the Libmv project before,
but is now consistently applied for the sources of the library itself
and to C-API. With some time C-API will likely be removed, and it
makes it easier to make it follow Libmv style, hence the diversion
from Blender's style.

There are quite some exceptions (clang-format off) in the code around
Eigen matrix initialization. It is rather annoying, and there could be
some neat way to make initialization readable without such exception.

Could be some places where loss of readability in matrix initialization
got lost as the change is quite big. If this has happened it is easier
to address readability once actually working on the code.

This change allowed to spot some missing header guards, so that's nice.

Doing it in bundled version, as the upstream library needs to have some
of the recent development ported over from bundle to upstream.

There should be no functional changes.
Revision e0442a9 by Julian Eisel
March 5, 2021, 13:45 (GMT)
UI Code Quality: Port Outliner Grease Pencil layers to new design

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.
March 5, 2021, 12:46 (GMT)
Cleanup: Remove static struct without data.
March 5, 2021, 12:46 (GMT)
Cleanup: COM_convert_data_types parameters.
March 5, 2021, 11:50 (GMT)
Fix T86293: crash undoing after executing the python console in certain
scenarios

In general, I could not find a reason executing from the python console
should not do an Undo push. Running a script from the Text Editor does
this as well and this seems generally useful.

Without an Undo push, one can easily run into situations were IDs have
been added or removed and undo on would then cause trouble (e.g. first
selection then bpy.ops.object.duplicate() -- this crashed as reported in
T86293 -- duplicate does not get its own undo push because it is not the
last op in the list, wm->op_undo_depth is not zero). This has changed
with the Undo refactor, so in essence the root cause is the same as
T77557, Legacy Undo does not suffer from the crash (but misses
the generally useful undo push from the console still)

Now add Undo to CONSOLE_OT_execute bl_options ('UNDO_GROUPED' seems more
appropriate than plain 'UNDO' since pasting multiple lines of code will
call CONSOLE_OT_execute multiple times in a row).

Maniphest Tasks: T86293

Differential Revision: https://developer.blender.org/D10625
March 5, 2021, 10:30 (GMT)
Cleanup: remove redundant NULL window checks handling events
March 5, 2021, 09:36 (GMT)
Cleanup: Use boolean in WM_cursor_wait

March 5, 2021, 08:48 (GMT)
Cleanup: Sync header+implementaiton definition.

Gave warning on Windows platform. There are more of these cases.
March 5, 2021, 06:10 (GMT)
UI: minor changes to preset sorting

- Only sort by the preset name (not it's directory).
- Remove redundant string conversion.
- Only call lower() once on the input.
- Don't assign the lambda to a variable for single use.
March 5, 2021, 06:10 (GMT)
Cleanup: move check_drag & check_click out of wmEvent

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.
March 5, 2021, 04:22 (GMT)
Presets: Improve sort order of presets

Pythons sort function does not sort naturally,
to solve this a custom sort key is used.

This issue is apparent when trying D10553
March 5, 2021, 04:22 (GMT)
UI: Add Presets for high framerate video

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
March 5, 2021, 03:59 (GMT)
Cleanup: disambiguate 'queue' struct members

The term queue isn't very descruptive on it's own, use:

- wmWindow.event_queue
- wmWindowManager.notifier_queue
March 5, 2021, 03:44 (GMT)
UI: save-preview tip now states that it's used for blend thumbnails
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021