Commit Graph

56 Commits

Author SHA1 Message Date
Ray Molenkamp
d60a60f0cb Add support for the TBB allocator on windows.
The heap on windows is single threaded causing it to lag behind linux in performance in allocation heavy multithreaded scenarios, BVH building is a prime example.

See https://developer.blender.org/D6218 for benchmark results

for testing with the allocator enabled/disabled you can set the environment variable TBB_MALLOC_DISABLE_REPLACEMENT=1 to disable the TBB allocator.

Reviewed By: @sergey

Differential Revision: https://developer.blender.org/D6218
2019-11-12 20:55:39 -07:00
Ray Molenkamp
a67aa11b12 Windows: Switch to the dynamic C runtime
This change switches windows to the dynamic C runtime
avoiding issues coming from mixing the static and dynamic
runtime like the ones outlined in [1]

[1] https://developer.blender.org/D5387#122165

Differential Revision: https://developer.blender.org/D6175

Reviewed by: @Sergey
2019-11-08 09:01:00 -07:00
Campbell Barton
312075e688 CMake: add missing headers, use space before comments 2019-10-29 01:33:44 +11:00
Sergey Sharybin
decdd70dfd Deps: Add libraries needed for Software GL
Only compiled on Linux.
2019-10-09 12:37:04 +02:00
Sybren A. Stüvel
b9736e8e12 Add Opus audio library and configure FFmpeg to use it
Opus support was enabled in 2ddfd51810. This commit adds the Opus
library and configures FFmpeg to be compiled with Opus support.

NOTE: It may be required to run `cmake -U '*FFMPEG_LIBRARIES*' .` in
your Blender build directory in order to refresh the `FFMPEG_LIBRARIES`
setting and add libopus.
2019-10-04 16:30:01 +02:00
Brecht Van Lommel
5489611e53 Compositor: Added denoising node
This node is built on Intel's OpenImageDenoise library.
Other denoisers could be integrated, for example Lukas' Cycles denoiser.

Compositor: Made OpenImageDenoise optional, added CMake and build_env files to find OIDN

Compositor: Fixed some warnings in the denoising operator

build_environment: Updated OpenImageDenoise to 0.8.1

build_environment: Updated OpenImageDenoise in `make deps` for macOS

Reviewers: sergey, jbakker, brecht

Reviewed By: brecht

Subscribers: YAFU, LazyDodo, Zen_YS, slumber, samgreen, tjvoll, yeus, ponomarovmax, getrad, coder.kalyan, vitos1k, Yegor, DeepBlender, kumaran7, Darkfie9825, aliasguru, aafra, ace_dragon, juang3d, pandrodor, cdog, lordodin, jtheninja, mavek, marcog, 5k1n2, Atair, rawalanche, 0o00o0oo, filibis, poor, lukasstockner97

Tags: #compositing

Differential Revision: https://developer.blender.org/D4304
2019-08-14 21:40:35 +02:00
Lazydodo
54013d541c build_environment/python: Bump versions of our site-packages
IDNA     2.8
CHARDET  3.0.4
URLLIB3  1.25.3
CERTIFI  2019.6.16
REQUESTS 2.22.0
NUMPY    1.17.0
2019-08-13 16:58:26 -06:00
Sybren A. Stüvel
454daf9b6b Upgrade Python from 3.7.0 to 3.7.4 2019-08-02 16:49:26 +02:00
Sergey Sharybin
658aa00718 Build environment: Update OpenSubdiv to 3.4.0 RC 2
Newer OpenSubdiv brings fixes and improvements for non-manifold meshes,
which fixes some crashes we've experienced in the recent past when using
Gregory patches.

Additionally, thing new version of OpenSubdiv brings sparse patches,
which allows to multi-thread topology refinement step.
2019-06-27 15:15:08 +02:00
Campbell Barton
dfe2ca26f7 Cleanup: style, indentation 2019-06-19 07:32:21 +10:00
Campbell Barton
3076d95ba4 Cleanup: use 2 space indentation for CMake 2019-04-17 06:35:54 +02:00
Martin Felke
acc20b117d fix for freetype download link and llvm/clang header harvesting 2019-04-03 18:51:42 +02:00
Stephen Hassard
ede1ca0b3f Change remaining FTP server URIs to HTTP(s)
Most of the source tarballs are retrieved via http, but a few remain
that are still downloaded via ftp. This causes some pain with corporate
firewalls, so moving the last two URIs to http helps ease the build process.

Reviewers: sergey

Differential Revision: https://developer.blender.org/D4192
2019-03-25 11:19:14 +01:00
Ray Molenkamp
ba8d6ca3dd dependencies windows: Replace pthreads-win32 2.9.1 with pthreads4w 3.0.0
maintenance seems to have stopped for pthreads-win32
2018-12-11 15:12:56 -07:00
Ray Molenkamp
4cb6d97691 deps: update opencollada to v1.6.68 2018-12-05 08:44:50 -07:00
Stefan Werner
2c5531c0a5 Cycles: Added Embree as BVH option for CPU renders.
Note that this is turned off by default and must be enabled at build time with the CMake WITH_CYCLES_EMBREE flag.
Embree must be built as a static library with ray masking turned on, the `make deps` scripts have been updated accordingly.
There, Embree is off by default too and must be enabled with the WITH_EMBREE flag.

Using Embree allows for much faster rendering of deformation motion blur while reducing the memory footprint.

TODO: GPU implementation, deduplication of data, leveraging more of Embrees features (e.g. tessellation cache).

Differential Revision: https://developer.blender.org/D3682
2018-11-07 12:58:12 +01:00
Ray Molenkamp
dcef3c30e3 build_depenencies: Fix url for openal. 2018-10-19 09:09:06 -06:00
Sergey Sharybin
9fd0060c0f Build environment: Ensure Python is using static ffi
Surely, need to compile ffi first :)

Good news are: Python seems static enough now!
2018-08-28 18:55:00 +02:00
Sergey Sharybin
19c65cd6e2 Build environment: Enable bzip2, lzma and sqlite for Python on Linux 2018-08-28 12:17:52 +02:00
Sergey Sharybin
072540688a Build environment: Enable SSL for Python on Linux
This involved getting SSL compiled from sources first, ensuring
it is a static library placement independent code. Configuration
is based on what Debian is using. CFlags required to have own
configuration file, which i didn't find a better place that next
to the corresponding CMake file.

It is OpenSSL btw.

It is set to Python via --with-openssl= configuration argument.
This works fine in a clean chroot, but having libssl-dev installed
might make Python to prefer system wide library, This was worked
around by using libssl_pic.a name for the library and modifying
setup.py. Would be cool to ensure system wide libraries are not
a problem, but official release builder is safe against this,
since it will catch possible non-static dependencies.

There is also a new map file which shadows bunch of Python
symbols. Without this Python's shared libraries might bring
conflicting symbols to Blender namespace at runtime.

Hopefully this doesn't break other platforms.
2018-08-27 18:14:42 +02:00
Campbell Barton
0734541bc4 Cleanup: trailing space 2018-08-21 17:01:56 +10:00
Campbell Barton
98efcdb1a0 Cleanup: trailing space 2018-08-20 11:24:14 +10:00
Ray Molenkamp
66dd954cab build_environment: openexr windows buildfix.
with the namespaces disabled the postfix also changed.
2018-08-19 11:44:46 -06:00
Ray Molenkamp
2a00bea7b4 build_environment: Various tweaks needed for windows debug libs. 2018-08-17 09:20:40 -06:00
Ray Molenkamp
1aed77caca build_environment: osl 1.9.9
does no longer seem to bundle pugixml, so that's a new dependency.
2018-08-16 17:42:37 -06:00
Ray Molenkamp
11c845e334 build_environment: openimageio 1.8.13 2018-08-16 13:43:46 -06:00
Ray Molenkamp
88011ddba9 build_environment: python packages update.
idna 2.7
chardet 3.0.4
urllib3 1.23
certifi 2018.8.13
requests 2.19.1
2018-08-16 09:07:32 -06:00
Brecht Van Lommel
231d54e79b Build Environment: fix for IlmBase lib names without version on Linux. 2018-08-16 16:21:26 +02:00
Ray Molenkamp
8d1a7f3773 build_environment: openvdb 5.1.0 2018-08-15 20:48:19 -06:00
Ray Molenkamp
f634d4a8a6 build_environment: opencolorio 1.1.0
-Moved from dynamic link to static on windows
-gained lcms/tinyxml/yamlcpp deps, since we need a little more control over the build flags than the build-in options will provide.
2018-08-15 12:32:34 -06:00
Ray Molenkamp
8203e70709 build_environment: opencollada 1.6.63 2018-08-13 20:45:38 -06:00
Ray Molenkamp
1f3eb3088f build_environment: sdl 2.0.8 2018-08-13 19:19:42 -06:00
Ray Molenkamp
fee32abee9 build_environment: opensubdiv 3.3.3 with PR975 + TBB 2018_U5 2018-08-13 19:08:28 -06:00
Ray Molenkamp
518ce887ad build_environment: iconv 1.15 2018-08-13 14:45:27 -06:00
Ray Molenkamp
4e03f9cbc2 build_environment: fftw 3.3.8 2018-08-13 13:21:36 -06:00
Ray Molenkamp
f749c3cbb9 build_environment: alembic 1.7.8 2018-08-13 11:36:23 -06:00
Ray Molenkamp
887d6cb1ee build_environment: fix windows ilmbase/openexr support.
seems like the openexr 2.3.0 release tarball has broken cmake support, latest from git works
we'll have to revisit this once they get a new release out.
2018-08-13 09:27:57 -06:00
Ray Molenkamp
4fc2a43e52 build_environment: ffmpeg 4.0.2
with
lame 3.100
ogg 1.3.3
vorbis 1.3.6
flac 1.3.2
vpx 1.7.0
x264 20180811
xvidcore 1.3.5
faad 2.8.8
2018-08-13 07:57:29 -06:00
Arto Kitula
349d67be28 build_environment: update ilmbase and openexr to 2.3.0 2018-08-13 16:12:30 +03:00
Ray Molenkamp
9d59851ca3 build_environment: blosc 1.14.4 2018-08-11 15:34:11 -06:00
Ray Molenkamp
a4c3a87635 build_environment:openal 1.18.2 2018-08-11 14:44:50 -06:00
Ray Molenkamp
0596af141e build_environment: zlib 1.2.11 2018-08-11 14:44:50 -06:00
Arto Kitula
eae4539bdd deplibs: get freetype tar.gz rather than zip to get unix line endings 2018-08-10 23:31:27 +03:00
Ray Molenkamp
7daf62950b build_environment: python 3.7.0 + numpy 1.15.0 2018-08-10 10:37:15 -06:00
Arto Kitula
92217a81b5 update image libraries, D3005 with few mods 2018-08-10 18:50:15 +03:00
Ray Molenkamp
e2f006949f build_environment: update freetype to 2.9.1 2018-08-10 07:48:27 -06:00
Arto Kitula
c19ddcc975 libs: boost 1.68 2018-08-10 03:08:18 +03:00
Arto Kitula
1282be0f82 update llvm + clang to 6.0.1 and add openmp for macOS 2018-08-09 17:57:12 +03:00
Arto Kitula
25418be97e build deps: llvm new website download locations 2018-01-03 14:52:25 +02:00
Brecht Van Lommel
ac934efc5e Build: fix make deps TBB on Linux, older versions don't support GCC 7. 2017-12-30 00:07:33 +01:00