Commit Graph

150077 Commits

Author SHA1 Message Date
Miguel Pozo
4e13fd4712 Fix #137560: Overlay: Mesh visibility mismatch
Skip prepass if depth is available.

Pull Request: https://projects.blender.org/blender/blender/pulls/137826
2025-04-22 15:09:14 +02:00
Miguel Pozo
f933282ed5 Fix #137514: EEVEE: Holdout objects still emit radiance
Disable radiance for holdout objects.

Pull Request: https://projects.blender.org/blender/blender/pulls/137824
2025-04-22 15:07:02 +02:00
Habib Gahbiche
49c284fe87 UI: Compositor: Activate viewer node when icon is clicked
Currently, clicking on the viewer icon in the compositor has no effect,
whereas in geometry nodes it activate or deactivates the viewer.

The compositor requires exactly one viewer to be active. So pressing the
icon when the viewer is already active has no effect

Pull Request: https://projects.blender.org/blender/blender/pulls/137840
2025-04-22 14:56:21 +02:00
Omar Emara
730cb40f4c Compositor: Turn Color Spill options to inputs
This patch turns the options of the Color Spill node into inputs.

In the process, the Ratio option was renamed to Limit Strength, the
unspill option was renamed to Spill Strength.

Reference #137223.

Pull Request: https://projects.blender.org/blender/blender/pulls/137848
2025-04-22 14:51:26 +02:00
Thomas Dinges
8706390dd8 License: Regenerate licence doc 2025-04-22 14:35:37 +02:00
Thomas Dinges
77022c7f28 Fix: License document had wrong link for public domain
Pull Request: https://projects.blender.org/blender/blender/pulls/137841
2025-04-22 14:34:51 +02:00
Brecht Van Lommel
50023eab75 Fix: Invalid kdtree node allocation after recent refactor
Address the root cause and fix one definition rule violation.
Broken by fb2ba20b67.

Pull Request: https://projects.blender.org/blender/blender/pulls/137845
2025-04-22 14:32:39 +02:00
Alaska
92b748a91b Fix: Cycles adaptive kernel compilation
This commit fixes a issue where Cycles adaptive kernel compilation
would always undefine adaptive kernel features, resulting in various
issues like incorrect renders.

Pull Request: https://projects.blender.org/blender/blender/pulls/137804
2025-04-22 13:26:28 +02:00
Campbell Barton
9de0aa1066 Fix: #133486: 'use_region_toggle_pie' AssertionError in MovieClipEditor 2025-04-22 11:25:14 +00:00
Campbell Barton
3c15f1bbe0 Cleanup: quiet Python linter warnings 2025-04-22 21:23:03 +10:00
Philipp Oeser
b40760caf8 Fix #137610: Motion Paths don't auto-update
Caused by 43d7558e5b

So for new layered actions, we need to get the list of FCurves in a
different way (via Channelbag).

Pull Request: https://projects.blender.org/blender/blender/pulls/137653
2025-04-22 12:30:42 +02:00
Colin Marmond
95659c0bfb Shader: Use experimental node previews only for material trees
Restrict the node previews to only material node-trees which are the only
supported for now.

Pull Request: https://projects.blender.org/blender/blender/pulls/137836
2025-04-22 11:28:25 +02:00
Brecht Van Lommel
fb2ba20b67 Refactor: Use more typed MEM_calloc<> and MEM_malloc<>
Pull Request: https://projects.blender.org/blender/blender/pulls/137822
2025-04-22 11:22:18 +02:00
Pratik Borhade
bf7c53bd57 Fix #137825: Grease Pencil: Orbit around selection fails in paint mode
Wrong origin was calculated when inside paint mode. Use
`BKE_paint_stroke_get_average` for correct pivot point in grease pencil
modes.

Pull Request: https://projects.blender.org/blender/blender/pulls/137831
2025-04-22 11:20:52 +02:00
Nathan Vegdahl
b69a4380b6 Fix: non-trivial memcpy compiler warnings on animrig copy constructors
The copy constructors for `animrig::Strip`, `animrig::Slot`, and
`animrig::StripKeyframeData` used a `memcpy` call as part of the copy
implementation. However, this produced warnings on clang 20.  For example:

```
warning: first argument in call to 'memcpy' is a pointer to
non-trivially copyable type 'blender::animrig::Strip'
[-Wnontrivial-memcall]`
```

These warnings did not reflect any actual bugs, because the underlying DNA
structs that those types wrap are in fact trivial. Nevertheless, it's worth
fixing the warnings.

This fixes the warnings by replacing the uses of `memcpy` with equivalents that
amount to a `memcpy` anyway, but which the compiler understands are valid for
the types.

There was also one additional use of `memcpy` in `Strip::create()` that did not
trigger a warning because it operated directly on the underlying DNA struct, but
was also unnecessary. This PR also replaces that with a simple assignment.

Pull Request: https://projects.blender.org/blender/blender/pulls/137467
2025-04-22 10:42:20 +02:00
Christoph Lendenfeld
145af8d45b Refactor: Add function to query editable Graph Editor curves
No functional changes intended.

This patch extracts functionality to get all `bAnimListElem`
that are editable in the Graph Editor
into a separate function so it can be re-used by other operators.
This makes it easy to ensure the same data is retrieved and
filter flags can't go out of sync.

Extracted from #135913
Part of: #135794

Pull Request: https://projects.blender.org/blender/blender/pulls/137142
2025-04-22 10:28:39 +02:00
Alaska
6faef7b149 Fix #137647: Remove warning about macOS not supporting custom wire widths
In a previous commmit (1), custom wire width for armatures was disabled
on macOS and a corrisponding warning was added to the UI due to a
limitation at the time leading to rendering artifacts #124691.

These limiations appear to have been sorted in Blender 4.4 and so
custom wire widths now work on macOS. So this commit removes the
warning message form the UI.

(1) a451971026

Pull Request: https://projects.blender.org/blender/blender/pulls/137651
2025-04-22 09:50:57 +02:00
Campbell Barton
2196d365f2 Cleanup: various non functional changes 2025-04-22 17:36:20 +10:00
Campbell Barton
4935672317 Cleanup: replace inline check with BLI_path_is_rel 2025-04-22 17:30:54 +10:00
Omar Emara
5e93b6a2cd Compositor: Turn Luminance Key options to inputs
This patch turns the options of the Luminance Key node into inputs.

Reference #137223.

Pull Request: https://projects.blender.org/blender/blender/pulls/137823
2025-04-22 09:09:51 +02:00
Mukhesh
541e2b3cdd VSE: Hide-Reveal strips operator in sequencer preview
This pull request adds options to hide and show strips in the Sequencer
Preview, using the same shortcuts. Included "Show/Hide" operators in the Strips
menu of preview mode. It only works on strips that are visible in the preview
at the current frame. The Unmute operator now shows all hidden strips in
the preview at the current  frame, since it's not possible to select hidden strips
in sequencer preview.

See video in PR description.

Pull Request: https://projects.blender.org/blender/blender/pulls/137781
2025-04-22 08:18:21 +02:00
Campbell Barton
720b00ae50 Cleanup: use doxygen comments in BKE, consistent comment blocks
Also remove doxygen comment use for comments in the functions body.
2025-04-22 06:13:33 +00:00
Campbell Barton
2372167e96 Fix: building WITH_TBB=OFF
Caused by 388a21e260
2025-04-22 06:13:31 +00:00
YimingWu
dd91ba6d0e Fix (unreported): Opening N panel with mouse frees null ptr
Just guard the `nullptr`` inside `actionzone_exit` fixes the issue.
2025-04-22 13:38:37 +08:00
Alaska
d2704076b7 Tests: Small adjustments to the principled_bsdf_bevel_emission test
This commit makes two small adjustments to the
principled_bsdf_bevel_emission test:
- The IOR on the material that has the bevel shader was increased.
  - With this change, RDNA4 GPUs in Blender 4.4.X now fail this test.
- The exr environment texture is swapped for a noise texture.
  - This reduces the file size by about 200kb.

Ref: blender/blender-test-data!87
2025-04-22 06:26:18 +02:00
John Kinzel
3356db0588 Fix: Interactive Add Tool does not restore the snap properties on cancel
When snap setting is set to default and operation is cancelled,
snap setting from the topbar changes to different value instead of retaining
previous choice.

Pull Request: https://projects.blender.org/blender/blender/pulls/137819
2025-04-22 05:52:20 +02:00
Omar Emara
d791ea7cc2 Compositor: Turn Distance Key options to inputs
This patch turns the options of the Distance Key node into inputs.

Reference #137223.

Pull Request: https://projects.blender.org/blender/blender/pulls/137817
2025-04-21 19:28:57 +02:00
Brecht Van Lommel
d0477ffe2d Fix: Incorrect use of StringRef in USD logging
From refactor in b6372b3af3
2025-04-21 17:59:41 +02:00
Brecht Van Lommel
d061b00455 Refactor: Eliminate various unsafe memcpy and memset
Some of these already have warnings with clang-tidy, others are more
safe in case these structs get (copy) constructors in the future.

Pull Request: https://projects.blender.org/blender/blender/pulls/137404
2025-04-21 17:59:41 +02:00
Brecht Van Lommel
388a21e260 Refactor: Eliminate various void pointers passed to MEM_freeN
It's safer to pass a type so that it can be checked if delete should be
used instead. Also changes a few void pointer casts to const_cast so that
if the data becomes typed it's an error.

Pull Request: https://projects.blender.org/blender/blender/pulls/137404
2025-04-21 17:59:41 +02:00
Brecht Van Lommel
637c6497e9 Refactor: Use more typed MEM_calloc<>, avoid unnecessary size_t cast
Handle some cases that were missed in previous refactor. And eliminate
unnecessary size_t casts as these could hide issues.

Pull Request: https://projects.blender.org/blender/blender/pulls/137404
2025-04-21 17:59:41 +02:00
Brecht Van Lommel
cf5fc4dcec Fix: Mismatched new/delete in annotation and text operators
Pull Request: https://projects.blender.org/blender/blender/pulls/137404
2025-04-21 17:59:41 +02:00
Omar Emara
3c9f33ad07 Compositor: Turn Difference Key options to inputs
This patch turns the options of the Color Key node into inputs.

Reference #137223.

Pull Request: https://projects.blender.org/blender/blender/pulls/137816
2025-04-21 17:59:24 +02:00
Omar Emara
615e7f079a Compositor: Use a more conservative execution preset
Use a SomeSpanOrSingle execution preset for recently adjusted nodes to
reduce binary size.
2025-04-21 17:15:08 +02:00
Omar Emara
fa7d58ab4c Compositor: Turn Color Key options to inputs
This patch turns the options of the Color Key node into inputs.

Reference #137223.

Pull Request: https://projects.blender.org/blender/blender/pulls/137815
2025-04-21 16:40:17 +02:00
YimingWu
031755b9df Fix #137792: Animation: Auto-keying for Light Track to Cursor operator
The operator "Interactive Light Track to Cursor" did not auto-key
rotation values previously, this fix makes sure that rotation property
is keyed after the operator has finished transforming the object. The
rotation property that's keyed depends on the rotation mode of the
object.

Pull Request: https://projects.blender.org/blender/blender/pulls/137796
2025-04-21 16:12:56 +02:00
Miguel Pozo
be0c0a29d8 Fix #137539: Overlay: Sculpt overlays regression
Caused by 719351a9e6.
Each subpass needs a different blending mode.
2025-04-21 15:50:03 +02:00
Omar Emara
4f3413ff80 Compositor: Turn Chroma Key options to inputs
This patch turns the options of the Chroma Key node into inputs.

In the process, the minimum and maximum angles were renamed to Minimum
and Maximum for consistency with other matte nodes.

Reference #137223.

Pull Request: https://projects.blender.org/blender/blender/pulls/137812
2025-04-21 15:28:37 +02:00
Omar Emara
89b268bf0c Compositor: Turn Channel Key options to inputs
This patch turns the options of the Channel Key node into inputs.

Reference #137223.

Pull Request: https://projects.blender.org/blender/blender/pulls/137806
2025-04-21 14:02:15 +02:00
Johan Walles
8afde59054 macOS: Default to modern linker on x64
This patch changes the default macOS x64 linker from the slower legacy
"classic" linker, to the much faster default modern macOS linker. A new
CMake option `WITH_LEGACY_MACOS_X64_LINKER` was also introduced to use
the old linker, set to OFF by default.

As an example from testing on an Intel Macbook, this makes linking time
go from 3min25s to 10s after this change. The reason why the legacy
linker was enforced on x64 in the first place was to silence "platform
load command not found" warnings during linking. Since this behavior is
still desired on the BuildBot, the `WITH_LEGACY_MACOS_X64_LINKER` option
is enforced in the BuildBot macOS configs.

Pull Request: https://projects.blender.org/blender/blender/pulls/134639
2025-04-21 10:56:36 +02:00
Nicolas van Kempen
132a676120 Cleanup: Update outdated jemalloc-related comment
As of dde0765de2, jemalloc is enabled by default when found.

As of dde0765de2, jemalloc is enabled by default when found.
There is also no active plan to use it on all platforms, i.e.
on Windows tbbmalloc is used.

When it doesn't exist, there is simply a warning:
```
-- Could NOT find JeMalloc (missing: JEMALLOC_LIBRARY JEMALLOC_INCLUDE_DIR)
-- JeMalloc not found, disabling WITH_MEM_JEMALLOC
```

Pull Request: https://projects.blender.org/blender/blender/pulls/137743
2025-04-21 10:21:37 +02:00
Bastien Montagne
288ab8ed1c I18N: Add British English language to supported translations. 2025-04-21 10:08:30 +02:00
Bastien Montagne
78a32c6d68 I18N: Update UI translations from git/weblate repository (82927a8fdc7ad3). 2025-04-21 10:07:41 +02:00
Jesse Yurkovich
b6372b3af3 Cleanup: USD: Use StringRef in more places
Reduce the usage of raw `char *` and `std::string` in a variety of
places where they weren't needed.

General notes:
- Anything used for output or reporting needs to be `StringRefNull`
- No additional strlen calls should be incurred beyond what was already
  present
- Memory lifetime is still valid according to ASAN

Pull Request: https://projects.blender.org/blender/blender/pulls/137747
2025-04-19 04:48:34 +02:00
Sean Kim
f8c046f23d Cleanup: Rename node_mask_result variables to cursor_sample_result
Extra cleanup missed in b8014af7e0

Pull Request: https://projects.blender.org/blender/blender/pulls/137745
2025-04-18 23:33:10 +02:00
Bastien Montagne
5f2d3c49c5 MEM_guardedalloc: Organize and Document the public API.
Pull Request: https://projects.blender.org/blender/blender/pulls/135534
2025-04-18 20:24:14 +02:00
Hans Goudey
337f0fc2fc Fix: Build error after recent cleanup commit
Rename missing from b8014af7e0
2025-04-18 14:07:05 -04:00
Hans Goudey
378f949510 Fix: Remove incorrect assert in CustomData validation
The arrays for CustomData layers aren't necessarily allocated with the guarded
allocator. Their ownership is managed by the implicit sharing system which is
required for CustomData layer data.
2025-04-18 14:02:25 -04:00
Jacques Lucke
14f5fc2360 RNA: add PointerRNA::data_as<T>() method
This allows writing e.g. `ptr.data_as<bNode>()` as an alternative to
`static_cast<bNode *>(ptr.data)`. There are a couple of benefits to this approach:
* It's less verbose.
* Reduces the amount of "forced" usages of `static_cast`.
* Allows us to add run-time type checks in that method.

The run-time type checks are not implemented in this patch, I'm still trying
to find a good way to do that. However, even without that, this patch improves
the situation already.

Pull Request: https://projects.blender.org/blender/blender/pulls/137720
2025-04-18 19:48:00 +02:00
Sean Kim
b8014af7e0 Cleanup: Rename NodeMaskResult to CursorSampleResult
Pull Request: https://projects.blender.org/blender/blender/pulls/137706
2025-04-18 19:36:14 +02:00