Commit Graph

146 Commits

Author SHA1 Message Date
Lukas Tönne
bf31f69e23 Merge branch 'blender-v4.0-release' 2023-10-11 15:42:19 +02:00
Lukas Tönne
73c35dbc22 Fix #113433: Avoid calling registered custom node function
Follow-up fix for #113330.

The `valid_socket_type` classmethod in node trees is only available on
custom node trees (but documentation does not say that). It cannot be
used to determine if the default float socket type is valid for built-in
node tree types. We have to assume this socket type is always valid for
built-in node trees, or the operator will try to call a non-existent
method.

Pull Request: https://projects.blender.org/blender/blender/pulls/113540
2023-10-11 15:41:41 +02:00
Falk David
3931a54e08 GPv3: Initial Geometry Nodes support
This implements the core changes for this design: https://devtalk.blender.org/t/grease-pencil-integration-into-geometry-nodes/31220

The changes include:
* Add `CustomData` for layer attributes
* Add attribute support for the `GreasePencilComponent` to read/write layer attributes. Also introduces a `Layer` domain.
* Implement a `GreasePencilLayerFieldContext` and make `GeometryFieldContext` work with grease pencil layers.
* Implement `Set Position` node for `Grease Pencil`.

Note: These changes are only accessible/visible with the `Grease Pencil 3.0` experimental flag enabled.
Co-authored-by: Jacques Lucke <jacques@blender.org>
Pull Request: https://projects.blender.org/blender/blender/pulls/112535
2023-10-10 16:49:30 +02:00
Iyad Ahmed
87baecf33d Batch rename: add brush and scene data types
Ref !111772.
2023-10-10 20:36:00 +11:00
Brecht Van Lommel
5bb729b155 Merge branch 'blender-v4.0-release' into main 2023-10-09 19:19:11 +02:00
Richard Antalik
2098e29857 Fix #113258: Sound crossfade not working in meta strips
Traverse `sequences_all` instead of `sequences`.
2023-10-09 18:57:38 +02:00
Lukas Tönne
642ad4110b Merge branch 'blender-v4.0-release' 2023-10-06 14:34:08 +02:00
Lukas Tönne
dd9c906840 Fix #113134: Use a valid socket in node groups for custom nodes
Custom node trees may not suppor the default NodeSocketFloat socket
type. In case this default type is not supported, search all registered
socket types and pick the first one that is supported by the custom
node tree.

Pull Request: https://projects.blender.org/blender/blender/pulls/113330
2023-10-06 14:33:35 +02:00
Sybren A. Stüvel
0e420ea7ba Merge remote-tracking branch 'origin/blender-v4.0-release' 2023-10-05 14:36:46 +02:00
Sybren A. Stüvel
cf591606d1 Anim: change "Sync to Selected" to "Copy Colors to Selected"
"Sync" may imply that things are kept synchronous, while the operator
only performs a one-time copy. The new name & identifier reflect this
better.
2023-10-05 14:32:10 +02:00
bonj
355a30c106 Custom Properties: Add extra subtypes for float array
Add most remaining float subtypes for arrays in the custom property
edit operator.

Pull Request: https://projects.blender.org/blender/blender/pulls/112583
2023-10-05 09:43:33 +02:00
Campbell Barton
ed7b7c2cde Merge branch 'blender-v4.0-release' 2023-10-05 13:16:23 +11:00
Campbell Barton
9d4dc5376c Fix #112377: Edit Source missing info in the status bar
Reports from the internal operator weren't forwarded to the Python
operator, they were printed in the console instead.

Resolve by moving the operator to C++, use a utility function
to launch the external editor instead of an operator.
2023-10-05 13:09:47 +11:00
Brecht Van Lommel
3bbd4294d9 Merge branch 'blender-v4.0-release' into main 2023-10-04 21:32:58 +02:00
Brecht Van Lommel
61f982f0d1 Cleanup: make format 2023-10-04 21:30:41 +02:00
Jacques Lucke
29da7608ca Geometry Nodes: deduplicate zone socket item operators in Python
No user visible changes are expected.
2023-10-04 15:38:38 +02:00
Campbell Barton
b469d9dd7d Merge branch 'blender-v4.0-release' 2023-10-04 10:33:26 +11:00
Campbell Barton
36f65655cd Cleanup: reserve single quotes for enums 2023-10-04 10:30:28 +11:00
Jeroen Bakker
5573568c12 Cleanup: Make format 2023-10-02 07:56:56 +02:00
Nate Rupsis
dd5b870d15 Anim: Add channel type options to the Bake Action operator
Currently, we're limited to the type of Bake Data, without any control over the channels that get baked.

With this change, the user now has a fine degree of control as to which types of f-curve data will be written to the baked action (i.e., location, rotation, scale & b-bone channels).

Co-author  @cmbasnett

Pull Request: https://projects.blender.org/blender/blender/pulls/111997
2023-09-29 15:38:24 +02:00
Campbell Barton
9c021ae6d5 Merge branch 'blender-v4.0-release' 2023-09-29 14:56:21 +10:00
Campbell Barton
790fea431f Cleanup: use since quotes for enum values, wrap multi-line brackets 2023-09-29 14:41:48 +10:00
Nate Rupsis
5024c0ef97 Refactor: Move NLA anim bake paremeters into dataclass
The `bake_action` (and subsequent methods) for NLA action baking have a long parameter lists. Refactoring to move the bake options into a data class.

Pull Request: https://projects.blender.org/blender/blender/pulls/112865
2023-09-28 16:17:27 +02:00
Sybren A. Stüvel
f2bda4ab3a Anim: move 'solo bone collection' operator to menu and add 'show all'
Move operators that act on the active bone collection to a 'specials'
context menu, just like other UILists.

The menu now contains:
- Solo the active bone collection (i.e. make it visible and hide others).
- Show all bone collections.
2023-09-28 14:38:54 +02:00
Sybren A. Stüvel
2d04919a82 Anim: Add operator to 'solo' the active bone collection
With armature layers it was possible to, with one click, show a single
layer and hide all the others. This is now possible with bone collections
as well.

For that I added a new operator `armature.bone_collection_solo_visibility`,
with a button next to the list of bone collections. The icon is
`SOLO_ON`, which is also used in the NLA.
2023-09-28 14:20:24 +02:00
Sybren A. Stüvel
1930ebdb4f Anim: add operator to sync bone colors between selected bones
Blender's "Copy to Selected" feature only copies single properties, while
bone colors consist of four properties (palette + 3 custom colors). These
can now be copied with a single click.
2023-09-28 11:21:02 +02:00
Campbell Barton
62238464d8 Cleanup: format 2023-09-28 12:53:18 +10:00
Harley Acheson
13f5879e3c UI: Splash Screen Changes
Updated splash screen with different options depending on whether the
user is new or upgrading. Simplifies the process for new users and
makes the choices more distinct when upgrading. Returning users also
get a link to "What's New".

Pull Request: https://projects.blender.org/blender/blender/pulls/111123
2023-09-28 01:25:46 +02:00
Hans Goudey
9e495c5b06 Geometry Nodes: Store tool group in a separate editor property
This enables switching back and forth between the modifier and tool
contexts of the geometry node editor without losing the assigned tool
node group.

See #101778

Pull Request: https://projects.blender.org/blender/blender/pulls/112926
2023-09-27 15:47:22 +02:00
Hans Goudey
355ed0838c Geometry Nodes: Expose non-asset tools
Node tools are no longer required to be assets, and they aren't assets
by default anymore. Non-assets don't have catalogs for header menu
organization, so they are only exposed in the "Unassigned" menu, which
is now just an icon so it takes less spac, makes the connection to the
asset browser, and signals more that it's not the "final" place for a
tool. Tool node groups have fake user set by default, since they don't
have users. The "Is Tool" status of a node group is configurable in the
editor N-panel, just like the modifier status.

This is similar to af3461c387, and has the same check for
whether a node group is "local."
2023-09-26 17:01:50 -04:00
Hans Goudey
7e0691d027 Fix: Grammar in operator description 2023-09-25 13:25:32 -04:00
Pablo Vazquez
9a3131323b UI: About: Update links and labels
Following f7af45ccfd, rename link labels:

* Release Notes -> What's New
* Development Fund -> Donate

The description are left as is since they
are still correct, just the labels to be more
in line with language used in blender.org
2023-09-25 18:40:36 +02:00
Pablo Vazquez
f7af45ccfd UI: Splash: Small changes to links and labels
* Rename "Development Fund" to "Donate", more in line with
  the language used in blender.org
* Rename "Release Notes" to "What's New". A bit more inviting
  to click and sounds less technical.
* In "Getting Started", remove "Credits" since it it nos related
  to getting started, and add relevant links already present
  in the Help menu.

Pull Request: https://projects.blender.org/blender/blender/pulls/112741
2023-09-25 18:09:02 +02:00
Hans Goudey
26e56d0b52 Fix: Correct UI string in previous fix
Sorry for the noise...
2023-09-24 18:58:08 -04:00
Hans Goudey
15f24bd248 Fix #112814: New geometry nodes always named "Tool" 2023-09-24 18:55:02 -04:00
Hans Goudey
d1d570d318 Geometry Nodes: Don't require geometry input for "Mode to Nodes"
It's valid for modifier node groups to not have a geometry input, since
they can just be generators. The operator used to give a warning and
cancel itself when there was no geometry input. Now it works, and
skips adding the geometry input and the group input node to the
new group.
2023-09-23 20:32:52 -04:00
Germano Cavalcante
d61295155c Fix AttributeError: module 'urllib' has no attribute 'parse'
On some systems, the `urllib` package serves as a namespace only and
does not import the `parse` module under it.
2023-09-19 12:55:09 -03:00
Julian Eisel
591a1ae323 Assets: Remove (almost) all usages of asset handle in Python scripts
The asset handle type is supposed to be replaced by the asset
representation type. It is designed for the asset system as opposed to
the file browser backend. With d421ebac5e, d04cd3f3e6 and f6a6b27ac1, it
can now do everything that is needed in Python to be a replacement.

With this commit the asset handle type and the file handle type it uses
is almost entirely replaced in Python files (only for the asset view
template we require a collection property taking asset handles still,
for internal reasons.)

Part of #102877 and #108806.
2023-09-19 14:41:34 +02:00
Lukas Tönne
742f3b233f Nodes: Rename ui_items property to items_tree
DNA names are unchanged, just affects the RNA API.

Resolves #112523

Pull Request: https://projects.blender.org/blender/blender/pulls/112527
2023-09-18 18:07:26 +02:00
Hans Goudey
1cfed92c84 Fix: Exception creating geometry node group or node group socket
c951464b8a didn't update the uses of the API.
2023-09-18 11:01:05 -04:00
Campbell Barton
906a5a89c4 Cleanup: remove fix for #112129 which is no longer needed
Since [0] this is no longer needed.

[0]: a8db828618
2023-09-18 16:06:31 +10:00
Hans Goudey
f122193e24 Cleanup: Remove unused logic from geometry nodes operator
The "new node tree & assign to modifier" operator isn't used in the tool
context of the geometry node editor-- it doesn't have to handle it.
2023-09-17 20:09:14 -04:00
Philipp Oeser
4086ef986c Fix #112374: loading reference/background images filters out movies
Movies are perfectly fine for reference/background images, now allow for
loading them by adjusting the default filter for the filebrowser.

Pull Request: https://projects.blender.org/blender/blender/pulls/112378
2023-09-14 19:42:26 +02:00
Campbell Barton
c51336f5e8 Cleanup: single quote enums in Python 2023-09-13 13:38:39 +10:00
Campbell Barton
8167ad746c Fix Toggle Region pie menu items not matching the region direction
Regression in [0] which removed empty regions that were used to
ensure pie menu items match the location of regions.

The header for e.g. in time-line / graph editor for e.g. showed
on the opposite side.

[0]: 48b8c8f78f
2023-09-13 12:19:43 +10:00
Harley Acheson
48b8c8f78f Fix #112129: Remove Blank Items from "Region Toggle" Pie Menu
Remove empty menu items from the lists used by WM_MT_region_toggle_pie.

Pull Request: https://projects.blender.org/blender/blender/pulls/112193
2023-09-10 18:26:24 +02:00
Hans Goudey
b4dc16f32d Geometry Nodes: Improved defaults when creating new tool
The default options are now based on the active object type
and mode, and the new node group is named "Tool".

See #111523, #101778

Pull Request: https://projects.blender.org/blender/blender/pulls/111761
2023-09-07 19:46:40 +02:00
Campbell Barton
1f01a64403 Cleanup: spelling in comments 2023-09-06 14:23:01 +10:00
Campbell Barton
8caec75f2c Correct own error in 0424d57d76 2023-09-06 10:49:02 +10:00
Jesse Yurkovich
0424d57d76 Fix #89006: Use correct path to DJV viewer on Windows
The DJV installer does not add its executable to the PATH, but Blender
attempts to execute it using just "djv". This will not work.

Until DJV is able to address this we can fish out the full path from the
registry in the meantime.

Ref !111458
2023-09-06 10:41:38 +10:00