Commit Graph

136842 Commits

Author SHA1 Message Date
Jacques Lucke
4fe672d7f5 Geometry Nodes: free old bake when starting new bake
Previously, the old bake was only overwritten file by file. This caused issues like
the one fixed in 7d77691a83. Also, it could result in invalid
bake data if some bake is canceled and the data on disk is a mix of an old and
new bake.
2024-06-03 18:56:24 +02:00
Clément Foucault
38e398b63e EEVEE-Next: Add versioning code for Material Blend mode
The material blend mode Clip and Opaque are not supported
in EEVEE-Next and need to be emulated using math nodes.

This PR makes it possible to automatically convert the
simplest cases. More complex cases need user interactions
to fix.

Rel #122489

Pull Request: https://projects.blender.org/blender/blender/pulls/122608
2024-06-03 18:54:02 +02:00
Jacques Lucke
7d77691a83 Fix: avoid trying to load bake while baking
This could cause issues when rebaking a simulation without freeing
the old bake first.
2024-06-03 18:46:41 +02:00
Clément Foucault
dabaa3d280 USD: Update material test to use Cycles instead of EEVEE
This avoid issue with the versioning script that will
disconnect all alpha inputs for opaque materials.
2024-06-03 18:31:28 +02:00
Jacques Lucke
717f4d4dae Fix #122660: show Add Rest Position checkbox only for meshes 2024-06-03 18:12:55 +02:00
Sybren A. Stüvel
5bab6126c1 Anim: Baklava, prevent infinite redraw loop in temp animation layer panel
Make the hack to get an Action selector slightly less hacky, in order to
prevent an infinite redraw loop.

No functional changes, except that `window_manager.selected_action` is only
set when it needs to change.
2024-06-03 17:55:09 +02:00
Omar Emara
20d62d3805 Fix: Crash when toggling compositor device
Blender crashes when toggling the compositor device from CPU to GPU.
This is because when submitting the compositor job, the device might be
set to CPU, so GPU related data are not initialized in the job, but
between the time the job is submitted and the time it gets executed, the
device might change to GPU, which then tries to accept the uninitialized
GPU data from the job.

To fix this, we use the evaluated scene from the depsgraph since it
captures the state of the scene used in the job initialization.

Pull Request: https://projects.blender.org/blender/blender/pulls/122661
2024-06-03 16:50:15 +02:00
John Swenson
b5389f32c8 UI: Fix polling in sequencer preview overlays
When the sequencer overlays menu was restructured in #121591, the new
Sequencer panel types did not include polling, which means that they
also show up in the Preview-only view type.

Details and screenshots in the pull request.

Pull Request: https://projects.blender.org/blender/blender/pulls/122638
2024-06-03 16:38:47 +02:00
Nika Kutsniashvili
1fe8fbd93a UI: Reorganize mesh sculpt mode menus
Reorganization of the mesh Sculpt mode menu for simplicity and consistency.

Changes include:

- Moved transform operators into its own menu, consistent with other modes.
- Group Box, Lasso, Line, and Polyline Show/Hide operators
- Box, Lasso, Line, and Polyline Trim/Add operators moved to a new "Trim/Add"
- Cleanup and simplification of labels

Detailed explanation and example images in the pull request.

Pull Request: https://projects.blender.org/blender/blender/pulls/122437
2024-06-03 16:36:32 +02:00
Campbell Barton
a26031ed9b Fix #122652: Clicking offline status icon enabled online access
Oversight in [0] made clicking on the status bar icon enable online
access instead of opening the preferences.

[0]: c9a99c7eeb
2024-06-03 23:49:07 +10:00
Vitaljok
3f67abfe3c Fix: EEVEE-Next: Wrong Camera Viewport Render with enabled overscan
Fix for #122285

`Viewport Render Image` feature uses full parameters of the 3D view
to capture the scene.
Rendering `camera view` is a special case: viewport zoom/pan
parameters should be ignored in order to match render.

Pull Request: https://projects.blender.org/blender/blender/pulls/122467
2024-06-03 14:23:55 +02:00
Brecht Van Lommel
c0b8473bd6 Tests: Update Hydra reference renders 2024-06-03 14:04:30 +02:00
Brecht Van Lommel
a1d52ee950 Fix: Cycles CUDA runtime compilation should mark CUDA 12 as supported 2024-06-03 14:04:30 +02:00
Christoph Lendenfeld
5069d41b18 Fix: GPU issue because of bound depth buffer
This fixes an issue reported when launching Blender with
`--debug-gpu`. The newly added "thick wires" feature for
bone shapes caused that problem.
The issue was that the shader definitions used
the depth tex as a sampler and at the same time wrote to it.

The fix is to remove the code that uses the depth texture.
This is just the simplest solution for now, and it doesn't change
the visual appearance of the bone shapes.

------

Note: the code I copied from was `overlay_edit_mesh_frag.glsl`.
So I assume the depth sampler is needed, but the pipeline
for bone shapes isn't set up to handle that.

Pull Request: https://projects.blender.org/blender/blender/pulls/122558
2024-06-03 14:02:18 +02:00
Jeroen Bakker
6ec64cb039 Vulkan: Fix sample count when uploading layered textures
When uploading layered textures it was assumed that the data uploaded
had the data for all layers and ignored the given extent.
2024-06-03 13:51:11 +02:00
Jeroen Bakker
8077411d59 Vulkan: Disable barriers when using render graph
Barriers should be automatically extracted from the render graph.
GPU_issue_barrier will become a no-op.
2024-06-03 13:48:56 +02:00
Jeroen Bakker
049d84d36d Vulkan: Texture view clearing
EEVEE-Next requires clearing texture views. This PR adds that.

Pull Request: https://projects.blender.org/blender/blender/pulls/122650
2024-06-03 13:47:15 +02:00
Bastien Montagne
f33159b380 Fix: Make data_blocks collection in modifiers' bake data non-overridable.
The current code does not support overriding this data, and it is
generated at runtime anyway.

This may have to be revisited later, but for the time being, be
consistent and do not try to generate override data for this.

Pull Request: https://projects.blender.org/blender/blender/pulls/122554
2024-06-03 13:45:07 +02:00
Bastien Montagne
e2f83dd267 LibOverride: Improve handling of invalid collection/pointer editing.
In most common cases, an Pointer or Collection rna property needs a
custom liboverride 'apply' callback, if it supports modifying or adding
data in liboverrides.

The main change in this commit is that diffing code won't generate
anymore operations that are not supported on such properties.

In addition, the check on such invalid operations at liboverride apply
time has been turned into a `CLOG_ERROR` message, instead of an assert.
This is both more visible (as it also prints in release builds), and
less critical (as it won't terminate blender execution).
2024-06-03 13:45:02 +02:00
Bastien Montagne
aa9599119a Cleanup: LibOverride: Do not assign default callbacks to RNA properties.
These default assignements have not actually been needed/useful since a
very long time already. It was likely a left-over from early stages of
the project. While not a problem so far, it makes it harder to
distinguish RNA properties whith a custom liboverride handling, from the
ones using the default code.

Keeping them to `nullptr` by default also makes these callbacks definition
behavior more in line with other RNA properties callbacks, which are
usually non-null only when a custom function is defined.

No behavioral changes are expected from this commit.
2024-06-03 13:45:02 +02:00
Campbell Barton
916268bed9 Fix #122645: Extensions tag popover empty until checking for updates 2024-06-03 21:02:33 +10:00
Campbell Barton
1839ec7d9c Extensions: support showing files included in the build sub-command
Add a verbose argument to list all files included in a package,
useful when checking paths are properly included.
2024-06-03 21:02:32 +10:00
Sybren A. Stüvel
543521a952 Anim: use smaller margin for Timeline / Dope Sheet / Graph Editor
The 'Frame All', 'Frame Selected', and 'Frame Scene/Preview Range'
operators will now use a smaller margin. It will use the smallest of two
sizes:

- A fixed size in UI-scaled pixels, or
- 10% of the available editor width.

Previously Blender always used the latter. This was considered too
large, especially when the editor was wide.

This also unifies the margin calculations for the graph editor, dope
sheet, and timeline. Earlier versions used smaller margins for the graph
editor than for the other editors, but this is no longer necessary.

Pull Request: https://projects.blender.org/blender/blender/pulls/122320
2024-06-03 12:26:04 +02:00
Bartosz Kosiorek
e97d46e5b0 UI: Add tooltips to Physics and Subdivide modifiers
Pull Request: https://projects.blender.org/blender/blender/pulls/121346
2024-06-03 12:09:57 +02:00
Falk David
1334d64780 Refactor: GPv3: Move stroke operation construction to stroke_update_step
Previously, the stroke operations were created in the `stroke_test_start`
callback function. This causes a few issues:
* Each mode had it's own `test_start` function and it's own function
  to create the stroke operations.
* Only the mouse position was available for the start sample.

With this change, the `stroke_test_start` function now does nothing.
Instead, the operations are created in the common `stroke_update_step`
function using `get_stroke_operation` the first time it's called.
This also means that the start sample is populated with the correct
start pressure.

Pull Request: https://projects.blender.org/blender/blender/pulls/122555
2024-06-03 11:50:03 +02:00
Nikita Sirgienko
e0ecf443d4 Cycles: Fix compile error in 1465076a0a 2024-06-03 11:33:28 +02:00
Jeroen Bakker
ac4ab3a209 Vulkan: Debug name for staging buffer
Staging buffers didn't had a name this PR adds a name so they
are easier to track in debug tools.

Pull Request: https://projects.blender.org/blender/blender/pulls/122649
2024-06-03 11:14:27 +02:00
Nikita Sirgienko
6d87a5d9ed Cleanup: Cycles: Fix type in the OpenImageDenoise name.
There are no functional changes expected.
2024-06-03 11:11:20 +02:00
Nikita Sirgienko
1465076a0a Refactor: Cycles: Unify error reporting code from denoiser's classes
There are no functional changes expected.
2024-06-03 11:11:19 +02:00
Nikita Sirgienko
cb8d2bf4ad Fix: Cycles: Add missing queue init in run_film_convert_kernels 2024-06-03 11:11:19 +02:00
Jeroen Bakker
abcf55d15a Vulkan: Only support device vertex buffers
BLF font rendering isn't compatible with render graph as it
rewrites buffers that are not yet drawn. To work around this issue
the vertex buffers should always be created on device and not
directly altered by CPU code.

Pull Request: https://projects.blender.org/blender/blender/pulls/122648
2024-06-03 10:58:27 +02:00
Omar Emara
a162149cfa Fix #121761: Crash when compositing while rendering
Blender crashes when the interactive GPU compositor is running in a node
editor while rendering. This is because the GPU compositor is sharing
the same GPU context used for rendering, which is not allowed. To fix
this, we use a dedicated render list for interactive compositing, to use
its dedicated GPU context.

This is implemented by keeping another render list for the purpose of
compositing and similarly clearing its context when it is no longer
needed.

Pull Request: https://projects.blender.org/blender/blender/pulls/122472
2024-06-03 09:56:58 +02:00
Bastien Montagne
e1c8baf046 I18N: Updated UI translations from git/weblate repository (bfcffce0a4d1e1). 2024-06-03 09:38:03 +02:00
Philipp Oeser
ba3fac92af Fix #122598: Curves Grow brush broken on curves with only two points
Code was getting a direction (to grow in) from the last point in a curve
and another point in the middle of the curve.
On a curve with only two points, these points were the same, resulting
in a zero delta and thus doing nothing.

To resolve, take the root point instead in this scenario to get a valid
direction.

Pull Request: https://projects.blender.org/blender/blender/pulls/122644
2024-06-03 09:20:07 +02:00
Jesse Yurkovich
5bc71c8704 Cleanup: style changes for newly added USD DomeLight support code
A variety of non-functional style changes for the recently added
DomeLight code:

- Remove unused includes and forward decls
- Changed NULL -> nullptr
- Use `motionSampleTime` name consistently
- Moved the `r_value` out parameter to the last position per our coding
  guidelines

Pull Request: https://projects.blender.org/blender/blender/pulls/122641
2024-06-03 04:41:39 +02:00
Hans Goudey
e2402eb4a9 Cleanup: Use C++ types, references for CCGElem access 2024-06-02 20:36:33 -04:00
Hans Goudey
d374b5abf7 Cleanup: Miscellaneous changes in BKE_ccg.hh
- Remove unnecessary declarations for inline functions
- Remove typedef keyword
- Use C++ casting instead of C-style casts
2024-06-02 20:36:33 -04:00
Hans Goudey
49b52b35d5 Cleanup: Move BKE_ccg.h to C++ 2024-06-02 20:36:33 -04:00
Jesse Yurkovich
05f8d35652 Fix #122606: fully map Blender's INT8 type to USD's UChar
While USD does not have a signed, 8-bit, integer type we can use its
UChar type instead.

Pull Request: https://projects.blender.org/blender/blender/pulls/122610
2024-06-02 22:26:12 +02:00
Iliya Katueshenock
81c5e42ec5 Cleanup: BLI: Support IndexMask as universe for mask complement
Pull Request: https://projects.blender.org/blender/blender/pulls/122616
2024-06-02 19:40:20 +02:00
Campbell Barton
4a117f3116 Extensions: add popover to filter by tags
Since the categories from add-ons are no longer shown all extensions
are shown together. Support filtering by tags as an alternative.
2024-06-02 23:25:49 +10:00
Campbell Barton
5e462135f3 Extensions: avoid redundant conversion the new manifest to bl_info
Converting the manifest TOML to the bl_info ran before checking
if the add-on was legacy.
2024-06-02 23:00:11 +10:00
Pratik Borhade
ab5f8d9f3a Fix #122491: DOF pick in context menu grayed out
Caused by 7f8d4df410
Changes in poll function had excluded the case of context menu button.
Fix this by returning true if operator identifier is `UI_OT_eyedropper_depth`

Pull Request: https://projects.blender.org/blender/blender/pulls/122532
2024-06-02 14:59:41 +02:00
Campbell Barton
f1bf9d366c Extensions: support canceling asynchronous operations
Pressing escape now passes `canceled` the finished action
(not currently used).
2024-06-02 21:49:44 +10:00
Campbell Barton
cfd199b7a2 Fix passing allocated strings to guarded-alloc 2024-06-02 20:39:06 +10:00
Campbell Barton
1aa5eddab3 Correct error in last commit
Correct flipped check in 96c4be169f.
2024-06-02 19:23:06 +10:00
Campbell Barton
96c4be169f Cleanup: minor changes relating to operator macros
- Consistent naming for wmOperatorTypeMacro variables.
- Reduced right-shift.
- Use boolean types.
2024-06-02 19:20:53 +10:00
Jesse Yurkovich
55a7e62f8a Cleanup: unused includes in source/blender/io/usd
Reduce dependence on Blender headers as much as possible and move closer
to an include-what-you-use setup.

- Removes unnecessary includes
- Replaces some includes with more appropriate, narrower, substitutes

Pull Request: https://projects.blender.org/blender/blender/pulls/122619
2024-06-02 04:46:02 +02:00
Jesse Yurkovich
dbc842b21e Fix #122582: Missing button assignment caused wrong precision to be used
The missing button assignment caused the previous button ("Z:") to have
its precision set to the incorrect value.

Pull Request: https://projects.blender.org/blender/blender/pulls/122583
2024-06-01 19:55:28 +02:00
Harley Acheson
30168752cf Fix #122590: Revert "Fix #122423: Fix Gizmo Map Crash after Area Join"
This reverts commit e48eacd672.

Pull Request: https://projects.blender.org/blender/blender/pulls/122604
2024-06-01 19:19:58 +02:00