Blender Git Commit Log

All Blender Git commits.

Page: 477 / 8462

July 6, 2021, 18:21 (GMT)
Moved node group interface panel code to python.

The node group interface panels were still implemented in C.
Now they ported over to python for easier maintenance.

Differential Revision: https://developer.blender.org/D11834
July 6, 2021, 18:18 (GMT)
Merge branch 'master' into node-group-single-input-nodes
Revision 40de574 by Hans Goudey (master)
July 6, 2021, 18:12 (GMT)
Fix: Crash when geometry nodes NURB spline has no evaluated points
July 6, 2021, 17:36 (GMT)
Nodes: Adds button to groups to change type of sockets.

The menu lists all socket types that are valid for the node tree.
Changing a socket type updates all instances of the group and keeps
existing links to the socket.
If changing the socket type leads to incorrect node connections the
links are flagged as invalid (red) and ignored but not removed. This is
so users don't lose information and can then fix resulting issues.
For example: Changing a Color socket to a Shader socket can cause an
invalid Shader-to-Color connection.

Implementation details:
The new `NODE_OT_tree_socket_change_type` operator uses the generic
`rna_node_socket_type_itemf` function to list all eligible socket types.
It uses the tree type's `valid_socket_type` callback to test for valid
types. In addition it also checks the subtype, because multiple RNA
types are registered for the same base type. The `valid_socket_type`
callback has been modified slightly to accept full socket types instead
of just the base type enum, so that custom (python) socket types can be
used by this operator.

The `nodeModifySocketType` function is now called when group nodes
encounter a socket type mismatch, instead of replacing the socket
entirely. This ensures that links are kept to/from group nodes as well
as group input/output nodes. The `nodeModifySocketType` function now
also takes a full `bNodeSocketType` instead of just the base and subtype
enum (a shortcut `nodeModifySocketTypeStatic` exists for when only
static types are used).

Differential Revision: https://developer.blender.org/D10912
July 6, 2021, 17:22 (GMT)
Simplify python code with `bool(keys)`
July 6, 2021, 17:20 (GMT)
Merge branch 'master' into refactor-idprop-ui-data
July 6, 2021, 17:17 (GMT)
cmake: add 'wayland-protocols' to 'make deps'
July 6, 2021, 17:17 (GMT)
cmake: use harvested 'wayland-protocols' if system version is insufficient
July 6, 2021, 17:17 (GMT)
GHOST/wayland: define BTN event codes manually
July 6, 2021, 17:17 (GMT)
doc: add Wayland dependencies

The wayland support requires the following development packages:
libwayland-dev, wayland-protocols, libegl-dev, libxkbcommon-dev,
libdbus-1-dev, linux-libc-dev
Revision 9182c88 by Hans Goudey (master)
July 6, 2021, 17:11 (GMT)
Geometry Nodes: Allow 3 points in curve star primitive
July 6, 2021, 16:31 (GMT)
Formatting fixes.
July 6, 2021, 16:20 (GMT)
Cleanup: Keyframing, remove duplicate code

Remove duplicate code from the `ANIM_OT_keyframe_delete` operator. The
actions of the removed code are already performed by the preceding
`keyingset_get_from_op_with_error()` call.

No functional changes.
July 6, 2021, 16:20 (GMT)
Fix T89592: Can't remove keyframes without active keying set

Partially revert 7fc220517f87a2c40a4f438a50485233ae6ed62f, as it
introduced two issues:

- Deleting keys without active keying set was no longer possible, and
- there was no more confirmation popup.

Pressing {key Alt I} in the 3D Viewport now executes
`ANIM_OT_keyframe_delete_v3d`, adjusted to suit both T88068 and T89592:

- If there is an active keying set, delete keys according to that keying
set.
- Otherwise, behave as `ANIM_OT_keyframe_delete_v3d` did before, that
is, delete all keyframes of the selected object and in pose-mode also
of selected bones.
July 6, 2021, 16:11 (GMT)
Compositor: Constant folding

Currently there is no clear way to know if an operation is constant
(i.e. when all rendered pixels have same values). Operations may
need to get constant input values before rendering to determine
their resolution or areas of interest. This is the case of scale, rotate
and translate operations. Only "set operations" are known as
constant but many more are constant when all their inputs are so.
Such cases can be optimized by only rendering one pixel.

Current solution for tiled implementation is to get first pixel
from input. This works for root execution groups, others
need previous groups to be rendered.

On full frame implementation this is not possible, because buffers
are created on rendering to reduce peak memory and there is
no per pixel calls.

This patch evaluates all operations that are constant into primitive
operations (Value/Vector/Color) before determining resolutions.

Reviewed By: jbakker

Differential Revision: https://developer.blender.org/D11490
July 6, 2021, 16:11 (GMT)
Compositor: Enable constant folding on operations

Only on current full frame operations that can be constant.
July 6, 2021, 16:11 (GMT)
Compositor: Graphviz improvements

Graphs are usually large, needing a lot of horizontal scrolling and
they can include more information for debugging.

This patch makes graph more compact horizontally by splitting
labels in lines and removing namespaces.
Furthermore it adds following information:
- Operation ID.
- SetValueOperation float value.
- Optionally, operation node name.

Reviewed By: jbakker

Differential Revision: https://developer.blender.org/D11720
July 6, 2021, 16:04 (GMT)
Cleanup: Set execution system as operations member in Compositor

July 6, 2021, 16:02 (GMT)
Changing sock->type is done by node_socket_set_typeinfo.
Revision 1af722b by Ankit Meel (master)
July 6, 2021, 15:43 (GMT)
Deps builder: macOS/ ffmpeg: Fix linker warning

ld: warning: could not create compact unwind for _ff_rl_init_vlc: stack
subq instruction is too different from dwarf stack size
Similar to rB2de5de57c58521862e0fecc95fc474ea347b7468

Differential Revision: https://developer.blender.org/D11796
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021