4204 Commits

Author SHA1 Message Date
Nikita Sirgienko
2bab4ae370 Cycles: oneAPI: Optimize texture access by using GPU HW sampler
The current usage of software-based texture operations in
the oneAPI implementation puts additional register pressure on
the GPU compiler during register allocation. And it also creates
code that requires maintenance. This commit is intended to address
this situation by utilizing a recently productized SYCL bindless
texture API to enable HW-based texture operations using
Intel GPUs' hardware sampler.

This currently translates to 1-11% rendering speedups (scene-specific)
on my Arc A770 and Arc B580. At the moment, there are small
performance regressions with NanoVDB texture operations on Arc B580
and small performance regressions in shade surface MNEE and Raytrace
kernels on Arc A770, but they look recoverable and will be handled
in the future.

Pull Request: https://projects.blender.org/blender/blender/pulls/133457
2025-02-12 21:47:34 +01:00
Sebastian Parborg
33d34e2a05 Merge branch 'blender-v4.4-release' 2025-02-12 14:24:05 +01:00
Sebastian Parborg
8a251ffa8d install_linux_packages: Bump the remaining 4.4 lib versions
See #128577 for details
2025-02-12 14:23:48 +01:00
Sebastian Parborg
3666f2e719 Merge branch 'blender-v4.4-release' 2025-02-12 13:45:53 +01:00
Sebastian Parborg
48009f5c05 Build: Fix intel-graphics-compiler archive filename.
Before it was simply just the version number, so it was hard to tell
which package it was from.
2025-02-12 13:45:39 +01:00
Brecht Van Lommel
2874da0e02 Cleanup: Remove unused patches 2025-02-12 12:27:17 +01:00
Devashish Lal
1a62fdc82a Geometry Nodes: CSV import node
This commit implements a node to import CSV files as a point cloud.
The interface is minimal, with just a file path input. The type of each
column is chosen by whether the first value is an integer or a float
(those are currently the only supported types).

The goal of the node is to make it easier to get arbitrary data into
geometry nodes for visualization purposes, for example.

https://devtalk.blender.org/t/gsoc-2024-geometry-nodes-file-import-nodes/34482

Pull Request: https://projects.blender.org/blender/blender/pulls/126308
2025-02-10 16:56:52 +01:00
Sergey Sharybin
4e9f85b76f Merge branch 'blender-v4.4-release' 2025-02-10 14:55:57 +01:00
Patrick Mours
5810c94f95 Cycles: Add Blackwell to Cycles CUDA binaries architectures
Enables building of a Cubin for GPUs based on Blackwell architecture
if CUDA toolkit version 12.8 or higher is installed.
Only added sm_120 to the default set, since it is the one relevant for
consumer GPUs (RTX 5090 etc.) that are generally used with Blender.

Pull Request: https://projects.blender.org/blender/blender/pulls/134170
2025-02-10 14:55:28 +01:00
Jonas Holzman
7f2a7041ff Merge branch 'blender-v4.4-release' 2025-02-10 01:25:03 +01:00
Jonas Holzman
567669d3ff Build: Remove unused PCRE dependency
OpenCollada used to rely on PCRE (a Perl Regexp library). Since
switching to Aras' OpenCollada fork (#122270), the library is no
longer needed, but is still required as a dependency.

This patch cleans this up by completely removing it from our build
system and linux system package installation script. This also lets
us remove it from our pre-compiled library platform repos, making the
process of recompiling our libraries from scratch easier as it wasn't
compiled by our dependency builder anymore.

Pull Request: https://projects.blender.org/blender/blender/pulls/134310
2025-02-10 01:22:56 +01:00
Ray Molenkamp
c0ac537136 Merge remote-tracking branch 'origin/blender-v4.4-release' 2025-02-09 11:19:29 -07:00
Ray Molenkamp
768b71b3c9 Deps: Move OIIO Patch to the right folder.
Made a mistake while copying over the fix from my buildbox
2025-02-09 11:18:40 -07:00
Ray Molenkamp
f152d4c1a5 Merge remote-tracking branch 'origin/blender-v4.4-release' 2025-02-09 10:41:01 -07:00
Ray Molenkamp
675bf068fe Deps: Include OIIO PR 4630
OIIO triggered some asserts in the debug configuration on windows
during file save, upstream PR 4630 is required to resolve these.
2025-02-09 10:40:15 -07:00
Ray Molenkamp
79557f1e22 Merge remote-tracking branch 'origin/blender-v4.4-release' 2025-02-09 10:34:09 -07:00
Ray Molenkamp
227750926d CMake: Windows add opencolorio to PLATFORM_ENV_BUILD_DIRS
required to run oiiotool during the tests.
2025-02-09 10:33:20 -07:00
Brecht Van Lommel
709dcba98c Merge branch 'blender-v4.4-release' 2025-02-07 21:24:36 +01:00
Brecht Van Lommel
f9c4ad1477 Build: Auto clear CMake cache variables for 4.4 library update
And remove some old checks that are no longer relevant.

Pull Request: https://projects.blender.org/blender/blender/pulls/134244
2025-02-07 21:23:58 +01:00
Brecht Van Lommel
fcc770390d Fix: Disable zlib in dpcpp to avoid linking to system library
Matching build options for regular LLVM.

Pull Request: https://projects.blender.org/blender/blender/pulls/134244
2025-02-07 21:23:58 +01:00
Brecht Van Lommel
d568867c80 Fix: SYCL library not found after recent library update
Pull Request: https://projects.blender.org/blender/blender/pulls/134244
2025-02-07 21:23:58 +01:00
Brecht Van Lommel
1b6f2f26ef Merge branch 'blender-v4.4-release' 2025-02-06 15:04:51 +01:00
Patrick Mours
3b0742ea7c Build: Add Blackwell to OIDN GPU architectures
Pretty straight forward modification to OIDN to increase the max
SM version check and include binaries for the Blackwell GPU
architecture.

Requires CUDA toolkit 12.8+.

Co-authored-by: Brecht Van Lommel <brecht@blender.org>
Co-authored-by: Ray Molenkamp <github@lazydodo.com>

Pull Request: https://projects.blender.org/blender/blender/pulls/134115
2025-02-06 15:04:18 +01:00
Brecht Van Lommel
b66e8bd508 Merge branch 'blender-v4.4-release' 2025-02-06 14:58:18 +01:00
Ray Molenkamp
1540817576 For VFX platform 2025 and more.
Boost (removed!)
Cython 3.0.11
Expat 2.6.4
GMP 6.3.0
MaterialX 1.39.2
Nanobind 2.1.0 (new, for OpenVDB)
NumPy 1.26.4
OpenColorIO 2.4.1
OpenEXR 3.3.2
OpenImageIO 3.0.3.1
OpenVDB 12.0.0
OSL 1.14.3-beta
Python 3.11.11
Robinmap 1.3.0
TBB 2021.13.0
TIFF 4.7.0
USD 25.02
libxml2 2.13.5
zlib 1.3.1

Co-authored-by: Brecht Van Lommel <brecht@blender.org>
Co-authored-by: Jonas Holzman <jonas@holzman.fr>
Co-authored-by: Sebastian Parborg <sebastian@blender.org>

Ref #128577

Pull Request: https://projects.blender.org/blender/blender/pulls/134178
2025-02-06 14:57:02 +01:00
Nikita Sirgienko
e6c1eb59cb Merge branch 'blender-v4.4-release' 2025-02-05 15:13:28 +01:00
Nikita Sirgienko
bee534eea5 Build: Upgrade Intel Graphics Compiler to 2.1.14 on Linux
This corresponds the latest rolling 2448.13 release:
https://dgpu-docs.intel.com/releases/packages.html?release=Rolling+2448.13&os=Ubuntu+24.04

Graphics compiler upgrades require increasing the minimum required
driver (compute-runtime) version to the corresponding one to guarantee
compatibility, which is XX.XX.31740.15 in this release, so we bump this
requirement accordingly.

Co-authored-by: Xavier Hallade <me@ph0b.com>
Pull Request: https://projects.blender.org/blender/blender/pulls/134051
2025-02-05 15:00:04 +01:00
Thomas Dinges
eaef5e87c2 Revert "Release: Bump branch to 4.4 Beta."
This reverts commit 8a6e3a0bd7.
2025-02-05 11:25:54 +01:00
Thomas Dinges
8a6e3a0bd7 Release: Bump branch to 4.4 Beta.
Splash screen by Flow.
2025-02-05 11:24:33 +01:00
Brecht Van Lommel
7b976eb810 Build: Add OpenSubdiv patch to silence ASAN warnings
Until upstream PR #1343 is merged.
2025-02-04 18:02:34 +01:00
Brecht Van Lommel
f29e0546e3 Build: Enable custom USD namespace for Blender again
This was removed to make building USD plugins easier, without the need to
compile them for Blender specifically. However it also causes errors when
using the bpy module together with the usd-core pip package.

In practice there are not many USD plugins, and often need to be compiled
for Blender specifically anyway due to the monolithic library and DCCs being
on different USD versions.

Additionally, this adds a patch to avoid conflicts when loading the
same USD library version through Blender and usd-core on Windows and macOS.

Fix #127132: Crash using bpy and usd-core pip package together.

Co-authored-by: Ray Molenkamp <github@lazydodo.com>

Pull Request: https://projects.blender.org/blender/blender/pulls/133083
2025-02-04 18:02:34 +01:00
Bastien Montagne
e5bf3a28aa install_linux_packages: updated USD and materialX versions.
USD: 24.11
MaterialX: 1.38.10

See also #128577.
2025-02-04 17:29:56 +01:00
Bastien Montagne
5ea5cb9b13 install_linux_package: update OpenEXR, OCIO, OpenVDB versions.
OpenEXR: 3.3.2
OpenColorIO: 2.4.1
OpenVDB: 12.0.0

Also sync up exact FFMPEG version with reference (6.1.1, from
`versions.cmake`), and accept 7.x versions since Blender should also be
compatible with this major release.

See also #128577.
2025-02-04 17:29:56 +01:00
Bastien Montagne
f871815663 install_linux_packages: Updated Boost and OneTBB versions.
Boost: 1.85.0
OneTBB: 2021.13.0 (min is now 2021.0.0).

See also #128577.
2025-02-04 17:29:56 +01:00
Bastien Montagne
92d2544aa1 install_linux_package: Update python-related packages versions.
Python3: 3.11.11
CPython: 3.0.10
NumPY: 1.26.4

See also #128577
2025-02-04 17:29:56 +01:00
Bastien Montagne
66aa535faf install_linux_packages: Fix debian package query invalid results.
Turns out, `apt-cache` will not use exact package names match, leading
to invalid successful results in case a given package does not exist,
but a extended-name one does (e.g. looking for `python3.11` will return
results for packages like `libpython3.11-stdlib`...).

So add a first check using `apt show`, to ensure the requested package
name does exist first!

Also add a `__repr__` callback to the `PackageInstaller` class.
2025-02-04 17:29:56 +01:00
Thomas Dinges
d66b10bac0 Cleanup: Remove transform parameter now that asset folder was updated. 2025-02-04 16:43:54 +01:00
Thomas Dinges
21873221f8 Fix make_source_archive using outdated path to assets. 2025-02-04 16:19:54 +01:00
Bastien Montagne
06558d639e install_linux_package: Update/add OneAPI level-zero package.
Add package for Debian and Suse distros. Upgrade version to 1.19.2.

See also #128577.
2025-02-04 12:54:12 +01:00
Bastien Montagne
646d94be58 install_linux_package: Update Embree and OIDenoiser.
Embree: 4.3.3
OpenImageDenoiser version: 2.3.2

See also #128577
2025-02-04 12:54:12 +01:00
Bastien Montagne
88149918f1 install_linux_package: add harfbuzz library.
Although not currently used by `main` Blender, this library has been
tracked by platform maintainers for some times now, so time to also add
it to this script.

See aslo #128577.
2025-02-04 12:54:12 +01:00
Xavier Hallade
886cd0244f Build: Work around VS2019 compiler error when compiling DPC++
Pull Request: https://projects.blender.org/blender/blender/pulls/132763
2025-02-03 20:58:00 +01:00
Xavier Hallade
bdb093f58d Build: upgrade DPC++/Level-Zero to 6.0.0-rc1/1.19.2 releases
including a backport of device image compression:
https://github.com/intel/llvm/pull/15124 that can be enabled by adding
`--offload-compress` compiler option.
2025-02-03 20:58:00 +01:00
Xavier Hallade
7fb480095e Build: Embree: upgrade from 4.3.2-blender to 4.3.3 2025-02-03 20:58:00 +01:00
Campbell Barton
59732c95d8 Cleanup: strip trailing space for TOML,HTML & XML 2025-02-02 13:58:34 +11:00
Campbell Barton
4cd827870d Cleanup: quiet check_spelling_* targets
Also correct outdated references to `ghash`.
2025-02-02 13:58:34 +11:00
Campbell Barton
9d4b48b107 Cleanup: spelling in build-files & docs 2025-01-31 15:22:50 +11:00
Ankit Meel
301e298040 Build: Remove macOS mold and lld linkers support
The mold linker doesn't support macOS anymore. The sold linker
gets no new releases since the Xcode 15+ linker is at par with sold.

https://github.com/bluewhalesystems/sold/issues/50#issuecomment-2076249631
https://github.com/rui314/mold/issues/189#issuecomment-1495288926

Pull Request: https://projects.blender.org/blender/blender/pulls/133634
2025-01-30 18:21:38 +01:00
Aras Pranckevicius
73f8e4c3c6 Build: echo currently compiled file names when using clang-cl on Windows
MSVC does this by default, and is a good way to see build progress
indication, when using msbuild. clang-cl also got that option back
in 2018, but it is off by default.

Pull Request: https://projects.blender.org/blender/blender/pulls/133810
2025-01-30 13:43:29 +01:00
Lukas Stockner
c997e61414 Cycles: Bump minimum OSL version to 1.13.4
That version has a bunch of API changes, so by dropping support for older
versions we can remove old compatibility code.
Also, that version is required for OptiX support, so building a fully-featured
Cycles wasn't possible with older OSL anyways.

Pull Request: https://projects.blender.org/blender/blender/pulls/133746
2025-01-29 21:17:21 +01:00