Commit Graph

125097 Commits

Author SHA1 Message Date
Hans Goudey
a45f09decd Cleanup: Clarify comment about ownership in meah header
The ownership of the result mesh isn't "unkown", that doesn't
really make sense. Also use "true" instead of "truth".
2023-06-14 12:37:52 -04:00
Hans Goudey
4e21db30bf Cleanup: Remove unused mesh function 2023-06-14 12:37:52 -04:00
Guillermo Venegas
43a0f22be2 Cleanup: Move space sequencer files to C++
See #103343

Pull Request: https://projects.blender.org/blender/blender/pulls/108959
2023-06-14 18:36:17 +02:00
Sergey Sharybin
f96f310a9f Merge branch 'blender-v3.6-release' 2023-06-14 18:21:09 +02:00
Sergey Sharybin
3aaf076e8d Fix compilation error with oneAPI disabled and GPU Embree enabled
Happens with systems which do not provide GOLD linker: the linking state
would failing with some missing symbols and print about missing libsycl.so.6.

Seems that BFD linker expects to resolve all symbols, even the indirectly
used ones. This is somewhat counter-intuitive and is not how LLD, GOLD,
or MOLD worls.

The current state of the CMakeLists.txt does request the cycles_bvh to be
linked against SYCL_LIBRARIES. However, the SYCL was only requested to be found
if WITH_CYCLES_DEVICE_ONEAP is true.

Arguably the SYCL_LIBRARIES should only be linked-in into cycles_bvh if
EMBREE_STATIC_LIB, but that does not solve the issue with BFD.

This change makes it so the SYCL is requested to be found if the oneAPI
device is enabled, or if the Embree is detected to require/use SYCL
support.

Pull Request: https://projects.blender.org/blender/blender/pulls/108965
2023-06-14 18:20:45 +02:00
Sergey Sharybin
3806f3020b Merge branch 'blender-v3.6-release' 2023-06-14 18:11:55 +02:00
Sergey Sharybin
fc440c4fa0 Fix monster performance benchmark run on Windows
The scene contains some interesting names, which requires to be
written as utf-8. And on Windows file descriptor is not guaranteed
to be using utf-8. Or, will error out if the invalid utf-8 sequence
is written.

This change makes it so running benchmarks on windows it fully successful.

Pull Request: https://projects.blender.org/blender/blender/pulls/108982
2023-06-14 18:11:22 +02:00
Lukas Tönne
8c2ad8bbd3 Nodes: Panel declarations for grouping sockets
Adds an optional list of panels to node trees. Each socket can be
assigned a panel. UI panels will be created in the future in the
modifier for these grouped sockets.

Panels are stored as a pointer array in node trees, next to socket
declarations. Each panel has a name, but it does not have to be unique.
In future a panel might also store whether it is visible by default and
similar information.

C API and RNA API are both added. Panels and their socket
assignments are accessible to users through another list in the "Group"
tab of the node editor sidebar.

Sockets in the same panel will remain together even when adding,
removing, or moving sockets or panels, renaming, etc.
A socket can be moved up or down within a panel but each panel
remains a contiguous block. Actual tree views may be created later.

Pull Request: https://projects.blender.org/blender/blender/pulls/108649
2023-06-14 18:02:40 +02:00
Brecht Van Lommel
8d457cb68f Merge branch 'blender-v3.6-release' into main 2023-06-14 17:16:32 +02:00
Brecht Van Lommel
ea3cbf4942 Fix #108980: OpenEXR channels with unknown channel names fail to load
The example EXR is non-standard, but we may as well load the data anyway even
if we don't know the type of channels.
2023-06-14 17:15:30 +02:00
Germano Cavalcante
23f4fe4af1 Merge branch 'blender-v3.6-release' into main 2023-06-14 11:50:37 -03:00
Germano Cavalcante
5b39f39695 Clenaup: Remove unreferenced formal parameters
This silences warnings.
2023-06-14 11:45:46 -03:00
Jacques Lucke
2db1ab9245 Merge branch 'blender-v3.6-release' 2023-06-14 16:09:18 +02:00
Jacques Lucke
ebd2c5fc27 Cleanup: change class to struct to avoid warnings 2023-06-14 16:08:46 +02:00
Campbell Barton
ffdce441ee License headers: use SPDX-FileCopyrightText for source/
There are still some files that need to be manually updated due to
missing copyright dates.
2023-06-14 23:36:23 +10:00
Campbell Barton
8f109712ee License headers: use SPDX-FileCopyrightText for build_files/ & tools/ 2023-06-14 23:36:23 +10:00
Campbell Barton
49594c37ae License headers: use SPDX-FileCopyrightText for CMake files 2023-06-14 23:36:23 +10:00
Lukas Tönne
f3dd63e25c Cleanup: Convert several RNA C files to C++
C++ RNA files for object, nodetree, and curves.

Pull Request: https://projects.blender.org/blender/blender/pulls/108934
2023-06-14 15:27:59 +02:00
Germano Cavalcante
cfede90082 Merge branch 'blender-v3.6-release' into main 2023-06-14 10:27:36 -03:00
Germano Cavalcante
c2ed9c39cd Fix #108958: Crash in edit mode when snapping is enabled
Caused by cad897de16

The crash happens because the `SnapData_EditMesh` is removed from the
map but still accessed afterwards.

However, after cad897de16, invalidating an object's unique snap date is
no longer required.
2023-06-14 10:25:34 -03:00
Clément Foucault
cbfb9bcee4 EEVEE-Next: Fix wrong buffer location for sampling_buf
This created missing bind errors on some implementations.
2023-06-14 15:10:30 +02:00
Julian Eisel
8783038a38 Refactor: Remove asset library reference in node add menu code
The asset library reference isn't needed anymore for importing assets
since ccc9eef1b9. So it doesn't need to be set in the add menu context,
which simplifies code a bit.
2023-06-14 14:57:05 +02:00
Jacques Lucke
345d4087b7 Merge branch 'blender-v3.6-release' 2023-06-14 14:39:34 +02:00
Jacques Lucke
f43dd04aac Fix: missing simulation cache allocation when creating new modifier 2023-06-14 14:39:10 +02:00
Jacques Lucke
3298c72ea2 Merge branch 'blender-v3.6-release' 2023-06-14 14:24:08 +02:00
Jacques Lucke
54e303a69c Fix #108720: allow discovering baked simulation data during rendering
Sometimes the modifier has never been evaluated by an active depsgraph
before it is used for rendering. In this case, the baked data was never
loaded. Now also allow checking for baked data in a non-active depsgraph.
The locking that is in-place already should probably already be enough
to make this thread-safe but maybe that could be made more explicit.
2023-06-14 14:23:13 +02:00
Jacques Lucke
f1ce94d09e Merge branch 'blender-v3.6-release' 2023-06-14 14:14:38 +02:00
Jacques Lucke
7b61dcf6bc Geometry Nodes: deduplicate anonymous attribute analysis algorithm
Previously, there were two independent algorithms for analysing how anonymous
attributes are used in a node tree: One that just computed the `aal::RelationsInNode`
for an entire node tree and one that performed a more in depth analysis to
determine how far anonymous attributes should be propagated.

As it turns out, both operations can also be done at the same time and the result
can be cached on the node tree. This reduces the amount of code and allows for
better code reuse.

This simplification is likely only an intermediate step as things will probably have
to be refactored further to support e.g. serial loops (#108896).
2023-06-14 14:04:22 +02:00
Jacques Lucke
87643d173e Geometry Nodes: use shared_ptr for sharing simulation cache
With this the simulation cache pointer is copied over to the evaluated modifier.
This allows the original modifier to be removed without breaking the evaluated
modifier, which results in better decoupling. This can avoid issues when a
non-active depsgraph is evaluated in the background while the user is manipulating
the scene.

Also, it is now assumed that the simulation cache is always allocated even if
there is no simulation (similar to run-time data). This simplifies the code.

Pull Request: https://projects.blender.org/blender/blender/pulls/108976
2023-06-14 14:04:02 +02:00
Jacques Lucke
b169469016 Geometry Nodes: crash when propagating attributes
Pull Request: https://projects.blender.org/blender/blender/pulls/108801
2023-06-14 13:59:38 +02:00
Sergey Sharybin
2ad4156f74 Merge branch 'blender-v3.6-release' 2023-06-14 12:41:46 +02:00
Sergey Sharybin
5115afaca2 Rename benchmark to benchmark.py
Windows does not really have an idea of shebangs, and it needs to
go via a file extension to see that the script is to be executed
by Python.

This change simplifies execution from `python3 benchmark ...`
to `benchmark.py ...`.

Pull Request: https://projects.blender.org/blender/blender/pulls/108971
2023-06-14 12:41:24 +02:00
Jacques Lucke
37a0b97b51 Nodes: add debug utility to export bNodeTree as dot graph
It's possible to customize how the generated graph looks like by
passing in a custom `bNodeTreeToDotOptions`. This allows making
specialized visualizations for specific algorithms.
2023-06-14 12:19:13 +02:00
Campbell Barton
a2c6371e3e License headers: use SPDX-FileCopyrightText in intern/ghost 2023-06-14 17:42:15 +10:00
Philipp Oeser
5b101b7a63 Merge branch 'blender-v3.6-release' 2023-06-14 09:05:51 +02:00
Philipp Oeser
a7afce347d Fix #104597: Knife relative angle constaint wrong on rotated objects
The face normal was used in local space whereas it is needed as a global
direction (since other vectors here are in worldspace as well --
knife_input_ray_segment() returns worldspace).

Could go into 3.3 LTS.

Pull Request: https://projects.blender.org/blender/blender/pulls/108938
2023-06-14 08:58:28 +02:00
Philipp Oeser
c99dd96731 Knife: remove redundant recreation of a ray
This was done prior with no altering it and had a misleading comment.
Part of PR #108938 (split into a separate commit).

Pull Request: https://projects.blender.org/blender/blender/pulls/108938
2023-06-14 08:56:30 +02:00
Campbell Barton
c12994612b License headers: use SPDX-FileCopyrightText in intern/cycles 2023-06-14 16:53:23 +10:00
Campbell Barton
4b8434fabd License headers: add missing header 2023-06-14 16:51:35 +10:00
Richard Antalik
58d8a2ed67 Revert "Merge branch 'blender-v3.6-release'"
This reverts commit 01f0f8b86c, reversing
changes made to 26b5de6865.
2023-06-14 04:47:53 +02:00
Richard Antalik
01f0f8b86c Merge branch 'blender-v3.6-release' 2023-06-14 04:41:57 +02:00
Richard Antalik
b77e7480ef VSE: Remove retiming tool for 3.6 release
This reverts commits:
e1f6587f12
b4100ed377
6749593aec
a97cae3efc
559898709f
e4eb9e04e0
bb1c503bee
b21695a507
7bf56e5c75
4dc026ec8e
354ef89d20

Reason for reverting is to not introduce this feature with current UI.

Pull Request: https://projects.blender.org/blender/blender/pulls/108870
2023-06-14 04:25:52 +02:00
Campbell Barton
26b5de6865 Docs: correct reference to types, remove redundant bpy.types prefix 2023-06-14 12:20:09 +10:00
Campbell Barton
47b52b39ac Cleanup: use C++ conventions (function style cast, nullptr) 2023-06-14 12:20:07 +10:00
Campbell Barton
d4b23cae8f Cleanup: use C-style comments for descriptive text 2023-06-14 12:20:06 +10:00
Campbell Barton
5474f8d0ad Cleanup: remove unused MTex members
Also add docstring for which_output.
2023-06-14 12:20:05 +10:00
Campbell Barton
46e5d475a5 Cleanup: compiler warning 2023-06-14 12:20:03 +10:00
Campbell Barton
9e8db89b43 Fix logical error selecting similar vertex crease
Changes from [0] meant the crease layer was never assigned
(would always be left at -1).

[0]: e5ec04d73c
2023-06-14 12:18:58 +10:00
Lukas Stockner
eb8d56328d Cycles: Disable unused closure types when baking a specific component
When baking e.g. the Diffuse pass, use the existing filter logic to
disable glossy and transmission closures.

This reduces baking time and noise when baking individual components
of complex materials.
2023-06-14 03:13:22 +02:00
Lukas Stockner
f2678b35fa Cleanup: Cycles: Simplify light pass logic in bake_setup_pass 2023-06-14 02:39:24 +02:00