Commit Graph

108 Commits

Author SHA1 Message Date
Aras Pranckevicius
8a5c874afb Build: point mac arm64 libraries to latest main
Looks like recent commit b561c78f93 accidentally reverted
them back to a several months old state
2025-06-20 17:49:54 +03:00
Alaska
b561c78f93 Nodes: Remove legacy combine/separate nodes
In Blender 3.3 (1) the individual combine and separate color nodes were
combined together into a single combine/separate color node.

To ensure legacy addons still worked, the old nodes were left in
Blender, but hidden from the Add menus.

It has been nearly 3 years since that change was made, most if not all
addons should have been updated by now. So this commit removes these
hidden legacy nodes.

(1) blender/blender@82df48227b

Pull Request: https://projects.blender.org/blender/blender/pulls/135376
2025-06-17 15:36:33 +02:00
Julien Duroure
7cce4d171f Merge branch 'blender-v4.5-release' 2025-06-17 12:02:41 +02:00
Aras Pranckevicius
507e15d06f Build: remove OpenCollada libs
Point libraries to their repos with OpenCollada removed

Pull Request: https://projects.blender.org/blender/blender/pulls/139920
2025-06-06 09:33:10 +02:00
Jonas Holzman
2dd0368dda macOS: Update arm64 and x64 libraries for 4.5
4.5 Library Changes Task: #136540

Pull Request: https://projects.blender.org/blender/blender/pulls/139858
2025-06-06 01:10:56 +02:00
Anthony Roberts
8ac5feb676 Windows ARM64: Rebuild OpenVDB for blosc changes
Ref: #139792

Pull Request: https://projects.blender.org/blender/blender/pulls/139824
2025-06-04 12:33:23 +02:00
Ray Molenkamp
36b072713a Win64: Libs: Rebuild of openvdb due to blosc changes
see #139792 for details
2025-06-03 10:41:34 -06:00
Sebastian Parborg
6d9dccd5af Libs: Update to 4.5 Linux libs
See #136540 for more information
2025-06-03 18:33:27 +02:00
Anthony Roberts
f9c05ba253 Windows ARM64: 4.5 Library Updates
Ref #136540

Pull Request: https://projects.blender.org/blender/blender/pulls/139649
2025-06-03 11:51:37 +02:00
Ray Molenkamp
0034b6cf3e Win64: Blender 4.5 Library update
see #136540 for details

Pull Request: https://projects.blender.org/blender/blender/pulls/139733
2025-06-02 16:28:50 +02:00
Ray Molenkamp
bf325bc1b8 Fix: Incorrect submodule hashes in previous commit
accidentally got committed in 2c5b9e182b
2025-05-12 08:48:10 -06:00
Ray Molenkamp
2c5b9e182b CMake: Add code coverage support for clang
Pretty bare bones but gets the job done, unlike the gcc
tooling, this will work for release builds, the performance cost
of it is on the high side of things, the full test suite tests take over
an hour for me with code coverage support enabled on a release build.
I have not timed a debug build. Given developers can just run their
tests to get coverage data over what they are working on, I feel this
is still useful tooling to have.

This adds the 3 targets for clang and adds a single gcc target

coverage-reset - this removes the collected code coverage data and
report

coverage-report - This merges the collected data and generates the
report (new for gcc)

coverage-show - This merges the collected data and generates the report
and opens it in the browser

This relies on llvm-cov and llvm-profdata being available if not found
code coverage is disabled.

Note: A full test run requires an obscene amount of disk space, a
complete test run takes about 125GB and takes 12 minutes to merge, so
provision the COMPILER_CODE_COVERAGE_DATA_DIR folder accordingly

Example report in PR
2025-05-12 16:28:41 +02:00
Sebastian Parborg
f2081265ac Deps: Linux: Add TBB CMake config files
Ref: blender/blender#137063
4.5 Library tracking issue: #136540
2025-04-14 16:28:50 +02:00
Jonas Holzman
7ab0dba156 Deps: macOS arm64/x64: Add TBB CMake config files
Ref: blender/blender#137063
4.5 Library tracking issue: #136540
2025-04-13 22:41:49 +02:00
Anthony Roberts
2ccaba94aa Deps: Windows ARM64: Add new Manifold library
4.5 Library tracking issue: #136540
Ref: #135261

Pull Request: https://projects.blender.org/blender/blender/pulls/137348
2025-04-11 17:54:51 +02:00
Jeroen Bakker
a46643af0f Vulkan/OpenXR: Add support for VK_KHR_external_memory_fd
Current implementation uses a CPU roundtrip to transfer render result
to the Xr Swapchain. This PR adds support for sharing the render result
on Linux systems by using file descriptors.

To extend this solution to win32 or dx handles can be done by extending
the data transfer modes, register the correct extensions. When not
using the same GPU between Blender and OpenXR the CPU roundtrip
will still be used.

Solution has been validated with monado simulator and seems to be as
fast as OpenGL.

Performance can be improved by using GPU based synchronization.
Current API is limited as we cannot chain the different renders and
swapchains.

Pull Request: https://projects.blender.org/blender/blender/pulls/136933
2025-04-04 16:01:06 +02:00
Sebastian Parborg
73a466c44f Deps: Linux x64: Add new Manifold library 2025-04-03 18:25:59 +02:00
Thomas Dinges
5541c8063f Deps: Windows x64: Add new Manifold library
4.5 Library tracking issue: #136540
2025-04-03 13:26:23 +02:00
Jonas Holzman
ab00258d02 Deps: macOS arm64/x64: Add new Manifold library
4.5 Library tracking issue: #136540
Ref: #135261
2025-04-03 13:09:05 +02:00
Anthony Roberts
2c4628c474 Windows ARM64: Workaround #134676
PR as discussed on the thread for #134676.

Works by disabling dependent load flag in OIDN, and also switching off OpenMP.

The OIDN bit is just a workaround until they can resolve this properly on their side by fixing the manifest.

The OpenMP bit requires more investigation regarding delayed loading.

Pull Request: https://projects.blender.org/blender/blender/pulls/135319
2025-03-10 15:41:38 +01:00
Sergey Sharybin
5cd758368a Fix #134992: HIP-RT fails building BVH if Blender path contains space
Quite obscure issue, seemingly caused by the fact that HIP-RT is
passing a large (about 20 MB) global array to a different library
(HIP driver, via hipModuleLoadData). Having global variables of
such size seems to be always problematic as they can not be stored
on stack and, possibly, extra mapping is involved here. It is not
clear whether it is a quirk of the HIP driver, or Linux, or, maybe,
something completely different.

It is possible to work-around the problem by making a temporary
copy of data on heap memory and pass it to the hipModuleLoadData().
This is how other areas are dealing with modules in Blender.

This change contains patch against HIP-RT and the new HIP-RT
library compiled with the patch. It seems to fix the problem
reported in the report.

This change does not resolve OIDN on HIP GPU which seems to have
the same issue. However, it is not a recent regression and the
bug with OIDN GPU denoising can be reproduced using Blender 4.3.

Pull Request: https://projects.blender.org/blender/blender/pulls/135403
2025-03-04 09:35:54 +01:00
Sebastian Parborg
f8057af3df Libs: Update libs to include the patched openEXR lib
See #128577 for more information
2025-02-27 15:15:21 +01:00
Anthony Roberts
aaf6bcaba0 Windows ARM64: Update deps with new OpenEXR patch
Fixes #134802 via #135037

Pull Request: https://projects.blender.org/blender/blender/pulls/135188
2025-02-27 11:02:19 +01:00
Jonas Holzman
e2645bfaf1 macOS arm64/x64: Rebuild OpenEXR library with patch to fix DWA bug
Ref: blender/blender#135037
Fixes: blender/blender#134802
4.4 Changes Tracking Issue: blender/blender#128577

Pull Request: https://projects.blender.org/blender/blender/pulls/135180
2025-02-26 23:00:43 +01:00
Ray Molenkamp
2a283772e3 Deps: Windows: x64: Rebuild openexr with upstream PR 1986
This fixes #134802, blender side pr #135037
2025-02-26 07:57:13 -07:00
Sahar A. Kashi
6363181af9 Cycles: HIP-RT 2.5 integration and gfx12 support
This change brings the following improvements on the user level
- Support of GPUs with gfx12 architecture
- New HIP-RT library which in addition to the gfx12 support brings
  various bug-fixes.

The known limitation of gfx12 is that OpenImageDenoiser does not yet
support this GPU architecture. This means that while Cycles will use the
full advantage of the gfx12 (including hardware accelerated ray-tracing),
denoising will only be possible on CPU, or secondary gfx11 or below GPU.
This is something that requires a change in OIDN and it is to late to do
it for Blender 4.4, but it is something to look forward for Blender 4.5.

The gfx12 changes for the pre-compiled kernels is rather trivial,
so it comes together (in the same PR) as the bigger HIP-RT change.

On the development side this change brings the following improvements:
- One step compile and link (much simpler CMake rules)
- Embedding BVH binaries in hiprt dll (which makes it easier to package
  and load, without relying on special path configuration)

Co-authored-by: Sahar Kashi <sahar.kashi@amd.com>
Co-authored-by: Sergey Sharybin <sergey@blender.org>
Co-authored-by: Brecht Van Lommel <brecht@blender.org>

Pull Request: https://projects.blender.org/blender/blender/pulls/133129
2025-02-20 17:34:14 +01:00
Anthony Roberts
394d204758 Windows ARM64: Update libs to use patched OCIO
See #134568 for more details

Pull Request: https://projects.blender.org/blender/blender/pulls/134572
2025-02-14 15:03:17 +01:00
Anthony Roberts
bf53ee96e5 Windows ARM64: 4.4 Library Updates
Updates the prebuilt libs to the versions used in 4.4

Also adds a check to ensure users are using at least the version of VS2022, that was used to compile the libraries

Pull Request: https://projects.blender.org/blender/blender/pulls/134405
2025-02-13 16:51:19 +01:00
Ray Molenkamp
e94d92593e Windows: Update x64 libraries for 4.4
4.4 Library Changes Task: https://projects.blender.org/blender/blender/issues/128577

Pull Request: https://projects.blender.org/blender/blender/pulls/134424
2025-02-12 17:48:28 +01:00
Sebastian Parborg
dfb1b58681 Libs: Update to 4.4 Linux libs
See #128577 for more information

Pull Request: https://projects.blender.org/blender/blender/pulls/134340
2025-02-11 11:39:57 +01:00
Jonas Holzman
41bb42d374 macOS: Update x64 and arm64 libraries for 4.4
4.4 Library Changes Task: https://projects.blender.org/blender/blender/issues/128577

Pull Request: https://projects.blender.org/blender/blender/pulls/134301
2025-02-10 10:23:09 +01:00
Sebastian Parborg
78ff230257 Revert "Libs: Update to 4.4 Linux libs"
This reverts commit 924cb219d8.
2025-02-07 20:33:46 +01:00
Sebastian Parborg
924cb219d8 Libs: Update to 4.4 Linux libs
See #128577 for more information
2025-02-07 18:55:36 +01:00
Brecht Van Lommel
597f279702 Clang Format: disable formatting lib/, same as was done for extern/
Precompiled library headers don't follow Blender code style.
2025-01-04 18:35:11 +01:00
salipourto
4e5a9c5dfb Cycles: Handling SDK/ROCm 6+ lack of backward compatibility with pre ROCm 6
This commit introduces proper handling of ROCm 5 and ROCm 6 runtimes on
Linux, based on the version of the ROCm compiler used at build time.
Previously, HIPEW (the HIP equivalent of Cuda Wrangler) defaulted to
loading the ROCm 5 runtime. If ROCm 5 was unavailable, it would attempt
to load ROCm 6. However, ROCm 6 introduces changes in certain
structures and functions that are not backward compatible, leading to
potential issues when kernels compiled with the ROCm 6 compiler are
executed on the ROCm 5 runtime.

### Summary of Changes:

**Separation of Structures and Functions:**
Structures and functions are now separated into hipew5 and hipew6 to
accommodate the differences between ROCm versions.

**Build-Time Version Detection:**
The ROCm version is determined during build time, and the corresponding
hipew5 or hipew6 is included accordingly.

**Runtime Default to ROCm 6:**
By default, HIPEW now loads the ROCm 6 runtime and
includes hipew6 (Linux only).

**JIT Compilation Behavior:**
Since ROCm 6 is the default version, JIT compilation is supported only
when the ROCm 6 compiler is detected at runtime.

**HIP-RT Update:**
HIP-RT has been updated to load the ROCm 6 runtime by default.

These changes ensure compatibility and stability when switching
between ROCm versions, avoiding issues caused by runtime
and compiler mismatches.

Co-authored-by: Alaska <alaskayou01@gmail.com>
Co-authored-by: Sergey Sharybin <sergey@blender.org>
Pull Request: https://projects.blender.org/blender/blender/pulls/130153
2024-12-17 16:19:36 +01:00
Anthony Roberts
89102b3b5d Libs: Update Windows ARM64 Vulkan + shaderc
In line with what other platofrms have already done as part of #128577

Pull Request: https://projects.blender.org/blender/blender/pulls/131628
2024-12-10 11:16:12 +01:00
Sebastian Parborg
4d9a9a65f4 Libs: Linux: shaderc v2024.3 Vulkan loader/headers 1.3.296
see #129971 and #128995 for details
2024-12-05 14:14:39 +01:00
Ray Molenkamp
c71fba8190 Libs: Windows_X64: shaderc v2024.3 Vulkan loader/headers 1.3.296
see #129971 and #128995 for details
2024-12-02 11:55:20 -07:00
Sebastian Parborg
aad4e62173 Libs: Update linux libs 2024-11-14 18:07:16 +01:00
Anthony Roberts
6a242055a3 Windows ARM64: Update autopep8
Part of the 4.3 lib updates, which was missed (#125241)

Pull Request: https://projects.blender.org/blender/blender/pulls/129877
2024-11-05 19:23:15 +01:00
Ray Molenkamp
3469dea422 Windows_X64: Libs Autopep8 1.6.0-> 2.3.1
see #127553 for details
2024-11-04 11:42:36 -07:00
Jonas Holzman
b2a333a0cc Libs: macOS arm64/x64: Update autopep8 to 2.3.1
Ref: blender/blender#127553
4.3 Library Changes Task: blender/blender#125241
2024-10-16 23:39:46 +02:00
Sebastian Parborg
417f9f29cf Linux: Bump autopep8 version 2024-10-15 19:21:21 +02:00
Sebastian Parborg
1458ba1d6c Bump Linux libs 2024-10-15 18:26:31 +02:00
Jonas Holzman
eb2b0ac3f1 Libs: macOS arm64/x64: Update ShaderC to remove global locale lock
4.3 Library Changes Tracking Issue: #125241

Pull Request: https://projects.blender.org/blender/blender/pulls/128947
2024-10-13 13:29:33 +02:00
Sebastian Parborg
9d6794dd5d Fix #124173: SVG export creates invalid xml
Bump MaterialX libs with our workarounds
2024-10-11 14:17:34 +02:00
Ray Molenkamp
1d11123da7 Deps: WinX64 - 4.3 Library update
see #125241 for details
2024-10-10 12:07:28 -06:00
Campbell Barton
819fce6a3a Linux: add missing files from wayland protocols 2024-10-08 09:09:44 +11:00
Anthony Roberts
937b289137 Libs: Update OIIO+OSL+LibPNG+ShaderC
Pull Request: https://projects.blender.org/blender/blender/pulls/128690
2024-10-07 18:55:00 +02:00
Campbell Barton
470ccdd327 Linux: update ShaderC (#2)
Ref !127564
2024-09-25 12:38:39 +10:00