Commit Graph

150077 Commits

Author SHA1 Message Date
Miguel Pozo
b0e92cfba6 Merge branch 'blender-v4.2-release' 2024-06-13 15:54:24 +02:00
Miguel Pozo
f251452a4b Fix #123014: Hundreds of empty folders in the %temp% directory
Use BLI_temp_directory_path_get instead of
BKE_tempdir_base.
2024-06-13 15:53:40 +02:00
Bastien Montagne
d1a6ac16a8 Merge branch 'blender-v4.2-release' 2024-06-13 15:27:04 +02:00
Bastien Montagne
ffc89446e7 Cleanup: Remove unused rna_ensure_property_realdata helper.
The last use-case was removed in previous commit.
2024-06-13 15:26:30 +02:00
Bastien Montagne
c6f0d8daa6 Fix 'Copy to selected' on dynamic RNA properties failing in some cases.
Related to #119999 and #122059.

In case the _source_ PropertyRNA was unset (i.e. its underlying
IDProperty storage did not exist), the copy operation would silently
fail.

In fact, the existing code handling IDProperties separately in
`RNA_property_copy` was pretty bad, since it would also bypass all the
RNA 'setting value' code (like custom setters, update handling).

Turns out, liboverride RNA apply code can already handle all of these
cases, so simply pass the raw 'unresolved' RNA property to it, and
remove all this special handling code from `RNA_property_copy`, solves
all the issues.
2024-06-13 15:26:30 +02:00
Nathan Vegdahl
d2260ec183 Cleanup: remove ID prefixes from names in animation tests
The functions that create the IDs already take care of this, so it was
redundant and resulted in confusing reports on test failure.

Pull Request: https://projects.blender.org/blender/blender/pulls/123185
2024-06-13 15:14:25 +02:00
Sybren A. Stüvel
68b4139368 Anim: Change how un-assigning an action binding works
Reorder `Action::assign_id()` so that there is a clear "unassign any
previously-assigned binding" step first, and then a clear "assign the new
binding" step. Previously these were a bit too much intertwined.

Also `animrig::unassign_binding()` now simply calls into `Action::assign_id()`
instead of having somewhat overlapping responsibilities.

Finally the RNA setter for `AnimData.action_binding_handle` is changed
to always call `Action::assign_id()` for both assigning and unassigning
the handle. This ensures the API is properly used, instead of modifying
properties directly.

Pull Request: https://projects.blender.org/blender/blender/pulls/123184
2024-06-13 15:12:25 +02:00
Sybren A. Stüvel
2162af9e7b Merge remote-tracking branch 'origin/blender-v4.2-release' 2024-06-13 15:11:00 +02:00
Sybren A. Stüvel
10c4d71fbe Fix #123107: Memory leak when deleting edit bones
The list of bone collections of an edit bone wasn't freed when deleting
that edit bone.

Thanks @lichtwerk for the fix!
2024-06-13 15:09:54 +02:00
Clément Foucault
f289da5bd5 Fix: EEVEE-Next: Mesh see-through in edit mode with orthographic
The stored depth buffer was not considering orthographic
viewport cameras that have negative Z depth values.

Fix #123146
2024-06-13 14:44:51 +02:00
Pratik Borhade
0100be91b6 Fix #123113: Set Default shadow pool size
Add default pool size value in `_DNA_DEFAULT_SceneEEVEE`

Pull Request: https://projects.blender.org/blender/blender/pulls/123114
2024-06-13 14:19:09 +02:00
Clément Foucault
6147a7703c EEVEE-Next: Enable world sun shadow in default scene
Was disabled by versionning of older scene.
2024-06-13 14:12:13 +02:00
Sybren A. Stüvel
0250844dae Anim: RNA: make 'name' the 'name property' of Action Bindings again
Make `Binding.name` the 'RNA name property' of Action Bindings. This
ensures that the name property is unique (within the Action), and also
used for `action.bindings.keys()` and `action.bindings['BindingName']`.
2024-06-13 14:03:33 +02:00
Christoph Lendenfeld
9dcc63b76c Fix #122372: Keyingsets not keying custom properties of type EnumProperty
The issue was that when applying the keyingsets
`Whole Character` and `LocRotScale & Custom Properties` the
enum property of a rigify rig was not keyed.
The reason it was not keyed was just because
it was not specified in the compatible types in the keying set.
The fix is to just add `bpy.types.EnumProperty` to the list.

Pull Request: https://projects.blender.org/blender/blender/pulls/122377
2024-06-13 13:17:32 +02:00
Sybren A. Stüvel
46d50858d4 Anim: remove invalid assertion
Remove the assertion in `animrig::assign_animation()` that the passed
Action is a layered Action. The code works equally well for legacy Actions.

No functional changes.
2024-06-13 12:59:07 +02:00
Sybren A. Stüvel
34c5c2a6da Refactor: simplify BKE_animdata_free()
Reduce nesting by two levels in `BKE_animdata_free()` by swapping
conditions and returning early.

No functional changes.

Pull Request: https://projects.blender.org/blender/blender/pulls/123174
2024-06-13 12:38:06 +02:00
Bastien Montagne
de713122f3 Merge branch 'blender-v4.2-release' 2024-06-13 12:17:10 +02:00
Damien Picard
f87d4e4e40 I18n: Extract and disambiguate a few messages
Extract
- Cycles denoiser enum.
- Extensions user preferences UI.
- Node operator poll message from new node function.

Improve
- Split "(Enabled|Disabled) on startup, overriding the preference."
into two messages.

Disambiguate
- "Add" when describing the action of adding something should use the
  Operator context.
- "Dimensions", in noise textures.
- "Transform" as a noun, the matrix transform type of Geometry Nodes,
  as opposed to the verb to move things in space.
- "Parent" as a noun or verb (the parent of an object, to parent an
  object to another).

Some issues reported by Satoshi Yamasaki, deathblood, and Gabriel Gazzán.

Pull Request: https://projects.blender.org/blender/blender/pulls/122969
2024-06-13 12:15:55 +02:00
Dalai Felinto
77a69d04f2 Extensions: Changes to the translatable tags table
* Drop the repository - let's combine tags in a single list (per type)
  to avoid duplications in the future.

* Give a more sensitive name for tthe property, to avoid tags.tags.
2024-06-13 10:17:10 +02:00
Jeroen Bakker
22d352dacc Vulkan: Render graph drawing
This PR adds drawing support to the render graph. It adds support for
draw, indirect draw, indexed draw and indexed indirect draw.

Draw commands can only be executed within a rendering scope. Data
transfer commands and dispatch commands cannot be executed within a
rendering scope. Blender can still send in commands in any order and
the render graph needs to find out the best order to minimize context
switches (rendering/begin/end). This is the responsibility of the
scheduler.

The scheduler will push data transfer and dispatch commands outside the
rendering scope:
- data transfer and dispatch commands at the beginning are done before
  the rendering begin.
- data transfer and dispatch commands at the end are done after the
  rendering end.
- data transfer and dispatches in between draw commands will be pushed
  to the beginning if they are not yet being used.
- for all other data transfer and dispatch commands the rendering is
  suspenderd and will be continued afterwards.

Within a rendering context it is not allowed to perform synchronization
commands. Any synchronization commands inside a rendering scope will be
performed before the rendering scope begins. Nodes are now organized
in groups to simplify the code around this area.

Pull Request: https://projects.blender.org/blender/blender/pulls/123168
2024-06-13 09:37:17 +02:00
Omar Emara
8907b52839 Merge branch 'blender-v4.2-release' 2024-06-13 08:44:40 +03:00
Omar Emara
95eb3e13bf Fix #119211: Masks do not update in GPU compositor
Masks are not updated when edited when using the GPU compositor. That's
because the GPU compositor caches static resources and invalidates them
according to the recalculate flags that the depsgraph flushes to IDs.
The issue is that the flags are not flushed to the evaluated IDs of the
compositor depsgraph, but rather to some other evaluated versions of the
IDs.

To fix this, we make the compositor depsgraph persistent and store it in
the scene runtime. This allows us to reliably track changes to resources
used by the compositor and also reduces the overhead of depsgraph
creation in the compositor job.

Patch originally provided by Sergey.

Fixes #121188.

Pull Request: https://projects.blender.org/blender/blender/pulls/123085
2024-06-13 07:43:11 +02:00
Omar Emara
cbabe2d3ef Compositor: Remove Auto Render option
This patch removes the Auto Render option from the compositor. This is
done for the following reason:

- The option didn't really work except in the case of transforming an
  object. So it wasn't really reliable.
- It made little sense to use since the introduction of the Viewport
  Compositor.
- It had a number of UX issues, including the fact that it can't be used
  with animation playback, and the fact that rendering can get in the
  way of the UI depending on the preferences for temporary editors.

Pull Request: https://projects.blender.org/blender/blender/pulls/123132
2024-06-13 07:29:37 +02:00
Sean Kim
ad3c92b660 Cleanup: Remove unnecessary namespace specification
Pull Request: https://projects.blender.org/blender/blender/pulls/123153
2024-06-12 22:45:36 +02:00
Hans Goudey
aae9d44740 Cleanup: Sculpt: Rename and move plane-based brush utilities
These utiltities aren't really specific to the scrape brush; they're used elsewhere
too. With simpler names it feels better to put them in the common utilities file
so they can be shared more easily.

Pull Request: https://projects.blender.org/blender/blender/pulls/123152
2024-06-12 22:23:59 +02:00
Ray Molenkamp
0632f7af07 Merge remote-tracking branch 'origin/blender-v4.2-release' 2024-06-12 13:57:45 -06:00
Ray Molenkamp
0ab1291716 Windows: 4.2 library updates 2024-06-12 13:55:15 -06:00
Julian Eisel
fef0b18a72 Cleanup: Remove unused argument 2024-06-12 21:36:02 +02:00
Sean Kim
8aeddb7d3d Cleanup: Add docstring to StrokeCache bstrength
Pull Request: https://projects.blender.org/blender/blender/pulls/123143
2024-06-12 20:56:42 +02:00
Brecht Van Lommel
ed66bd4245 Merge branch 'blender-v4.2-release' 2024-06-12 20:07:24 +02:00
Brecht Van Lommel
1d45bb705e Fix: EEVEE assert rendering transparent pass 2024-06-12 19:30:52 +02:00
Brecht Van Lommel
87dae7d800 Build: Clean up oneAPI cmake messages
* Always define root directories in LIBDIR even when not needed,
  to silence some warnings.
* Only show warnings about not finding libs when oneAPI is enabled.
* Prefix message for context.
2024-06-12 19:21:43 +02:00
Sean Kim
b509893cd0 Fix: Invert stroke with smooth brush
Negative values for the strength should be clamped to 0.0f for this
brush to behave correctly. Without this, holding CTRL and doing a stroke
results in weird deformations.

Pull Request: https://projects.blender.org/blender/blender/pulls/123142
2024-06-12 18:39:37 +02:00
Brecht Van Lommel
c3dcad64c7 Fix #122989: Enabling installed legacy add-on fails without scripts folder
Needs to happen after refreshing the paths.
2024-06-12 18:36:55 +02:00
Brecht Van Lommel
3a7a9c60df Cleanup: Compiler warning building without OIDN 2024-06-12 18:29:49 +02:00
Brecht Van Lommel
397b96ed2e Fix #121819: OpenColorIO GLSL error after recent change, only apply to Metal 2024-06-12 18:29:49 +02:00
Brecht Van Lommel
f969208405 Fix #121819: OpenColorIO Metal GLSL error with grading curve 2024-06-12 18:10:46 +02:00
Sergey Sharybin
a10cfeda7c Merge branch 'blender-v4.2-release' 2024-06-12 18:06:32 +02:00
Sergey Sharybin
e67c95c8c4 Fix: Cycles renders black on AMD Metal
A mistake in the #122015 which lead to discrepancy between
CPU and GPU states: TargetConditionals.h always defines the
target CPU, and defines it to either 1 or 0.

The proper way of checking it is to `#if TARGET_CPU_ARM64`.

Some examples can be seen there:

  https://developer.apple.com/documentation/apple-silicon/building-a-universal-macos-binary

Pull Request: https://projects.blender.org/blender/blender/pulls/123140
2024-06-12 18:06:06 +02:00
Brecht Van Lommel
012a6fc573 Cleanup: make format 2024-06-12 17:43:44 +02:00
Matthew Hinson
a04d0b932f Fix: Broken Dependency Graph Python API example
Fix blender/blender-manual#104712

Pull Request: https://projects.blender.org/blender/blender/pulls/122563
2024-06-12 17:21:52 +02:00
Hans Goudey
9a89bd4396 Cleanup: Missing default case in attribute owner switch 2024-06-12 11:19:24 -04:00
Hans Goudey
9810281e5d Cleanup: Alphabetical formatting for sculpt brushes 2024-06-12 11:18:28 -04:00
Sean Kim
a7d0088f59 Cleanup: Add missing forward declaration
Pull Request: https://projects.blender.org/blender/blender/pulls/123112
2024-06-12 17:10:28 +02:00
Miguel Pozo
76f5041a9e Merge branch 'blender-v4.2-release' 2024-06-12 17:08:26 +02:00
Miguel Pozo
a27fa7e46c FIx #122085: Optimize iter_shader_to_rgba_depth_count 2024-06-12 17:07:46 +02:00
Hans Goudey
269f18ff5c Sculpt: Initial data oriented refactor for multires displacement eraser
Part of #118145.
Since only multires was supported, this was simpler. The grid iteration has
more boilerplate code than I'd like, but that can be improved later on.

Use of the "proxy" system is unnecessary here (as it is in general) and it's
removed in this commit.

Pull Request: https://projects.blender.org/blender/blender/pulls/123101
2024-06-12 16:58:31 +02:00
Hans Goudey
ba175c07af Sculpt: Initial data-oriented refactor for smooth brush
Part of #118145.
Like the draw brush, the overall API is still in progress, and in particular
duplication will be reduced in the future. But this brush already reuses
quite a bit of the utilities from the draw brush. A new utility is added for
finding vertex neighbor indices as well.

Overall I found this about 8% faster than the smooth brush in main already.

Pull Request: https://projects.blender.org/blender/blender/pulls/122906
2024-06-12 16:42:20 +02:00
Zopolis4
0a74065a19 Build: Disable WITH_MOD_OCEANSIM when WITH_FFTW3 is disabled
Bring behavior in line with other options.

Pull Request: https://projects.blender.org/blender/blender/pulls/122865
2024-06-12 16:36:50 +02:00
Miguel Pozo
11882815a9 Merge branch 'blender-v4.2-release' 2024-06-12 15:45:33 +02:00