Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
AgeCommit message (Collapse)Author
2022-01-17Fix T88877: 2.93: Crash on recent OSX with a non-English locale.Ankit Meel
Looks like OSX changed the default format of its locale, which is not valid anymore for gettext/boost::locale. Solution based on investigations and patch by Kieun Mun (@kieuns), with some further tweaks by Ankit Meel (@ankitm), many thanks. Also add an exception catcher on `std::runtime_error` in `bl_locale_set()`, since in OSX catching the ancestor `std::exception` does not work with `boost::locale::conv::conversion_error` and the like for some reasons. Reviewed By: #platform_macos, brecht Maniphest Tasks: T88877 Differential Revision: https://developer.blender.org/D13019
2022-01-05Fix/workaround macOS Rosetta crash running Cycles AVX testsBrecht Van Lommel
Just disable these tests on macOS for now as fixing seems hard, and we want to be able to cross-compile and test x86_64 on Arm machines on the buildbot.
2022-01-05Fix Cycles AVX test failure with x86_64 build running on ArmBrecht Van Lommel
Don't create const avx vectors before validating if CPU supports AVX.
2021-10-29Add missing "CUDA_ERROR_UNSUPPORTED_PTX_VERSION" to CUEWPatrick Mours
This is required for Cycles to report a meaningful error message when it fails to load a PTX module created with a newer CUDA toolkit version than the driver supports. Ref T91879
2021-07-27Cycles: upgrade CUDA to 11.4Brecht Van Lommel
This fixes a performance regression on Ampere cards, on specific scenes like classroom. For cycles-x there is little difference, but this is still helpful for LTS releases, and we need to upgrade at some point anyway.
2021-03-08Fix Cycles CUDA build error with Visual Studio 2019 v16.9Brecht Van Lommel
Something in this update broke the floor() function in CUDA, instead use floorf() like we do everywhere else in the kernel code. Thanks to Ray Molenkamp for identifying the solution.
2021-02-08Cycles: Add CUDA 11 build supportPatrick Mours
With this patch the build system checks whether the "CUDA10_NVCC_EXECUTABLE" CMake variable is set and if so will use that to build sm_30 kernels. Similarily for sm_8x kernels it checks "CUDA11_NVCC_EXECUTABLE". All other kernels are built using the default CUDA toolkit. This makes it possible to use either the CUDA 10 or CUDA 11 toolkit by default and only selectively use the other for the kernels where its a hard requirement. Reviewed By: brecht Differential Revision: https://developer.blender.org/D9179
2021-02-08Fix Cycles CUDA kernels for Ampere not building with CUDA 11Brecht Van Lommel
Running Blender on Ampere cards was already possible with ptx, this fix is needed to support building CUDA binaries. Note the CUDA version used for official Blender builds is still 10, this is merely the change to make it possible for those using CUDA 11 and specifying the sm_8x kernels to be compiled. Found by Milan Jaros.
2021-02-08Cycles: Enable OptiX on first generation Maxwell GPUs againPatrick Mours
2021-02-08Fix OptiX being shown as available on first generation Maxwell GPUsPatrick Mours
The OptiX kernels are compiled for target "compute_sm_52", which is only available on second generation Maxwell GPUs, so disable support for older ones.
2021-02-08Cycles: Use pre-compiled PTX kernel for older generation when no matching ↵Patrick Mours
one is found This patch changes the discovery of pre-compiled kernels, to look for any PTX, even if it does not match the current architecture version exactly. It works because the driver can JIT-compile PTX generated for architectures less than or equal to the current one. This e.g. makes it possible to render on a new GPU architecture even if no pre-compiled binary kernel was distributed for it as part of the Blender installation. Reviewed By: brecht Differential Revision: https://developer.blender.org/D8332
2021-02-08Cycles: Enable OptiX on all Maxwell+ GPUsPatrick Mours
2020-10-28Fix T81520: Crash setting the Cycles device from PythonCampbell Barton
2020-10-07Cycles: Fix usage of memory barriers in split kernelSergey Sharybin
On user level this fixes dead-lock of OpenCL render on Intel Iris GPUs. Note that this patch does not include change in the logic which allows or disallows OpenCL platforms to be used, that will happen after the kernel fix is known to be fine for the currently officially supported platforms. The dead-lock was caused by wrong usage of memory barriers: as per the OpenCL specification the barrier is to be executed by the entire work group. This means, that the following code is invalid: void foo() { if (some_condition) { return; } barrier(CLK_LOCAL_MEM_FENCE); } void bar() { foo(); } The Cycles code was mentioning this as an invalid code on CPU, while in fact this is invalid as per specification. From the implementation side this change removes the ifdefs around the CPU-only barrier logic, and is implementing similar logic in the shader setup kernel. Tested on NUC8i7HVK NUC. The root cause of the dead-lock was identified by Max Dmitrichenko. There is no measurable difference in performance of currently supported OpenCL platforms. Differential Revision: https://developer.blender.org/D9039
2020-10-07Fix OpenCL render error in large scenesBrecht Van Lommel
In scenes such as Cosmos Laundromat, there were memory allocations bigger than 2GB which would overflow. Problem and solution found by AMD, thanks!
2020-09-16Fix T71012: Cycles baking crash with locked-UI & background-modeCampbell Barton
2020-09-02Fix T77900: File Browser in macOS fullscreen crashesYevgeny Makarov
When Blender is started in fullscreen mode from the command line, or if the fullscreen state is saved in the startup file, all temporary windows will also open in fullscreen mode. When closing the fullscreen File Browser, Blender would either crash or parent window becomes black. This does not happen if the Blender switches to full screen manually. `NSWindowCollectionBehaviorFullScreenPrimary` should be set for windows that can enter full-screen mode. Otherwise macOS will turn the wrong window into full-screen. Similar fix: rB4b39de677d20 Differential Revision: https://developer.blender.org/D8708 Reviewed by: Julian Eisel
2020-08-31VR: SteamVR is now a supported OpenXR runtime! (Windows only)Julian Eisel
Steam just released a SteamVR update with OpenXR Developer Preview support: https://steamcommunity.com/games/250820/announcements/detail/2396425843528787270. Once SteamVR is set up for OpenXR (see link above), it works with Blender "out of the box", thanks to OpenXR! We have to apply the sRGB transform workaround for SteamVR though, otherwise it renders way too dark. Done in the next commit. Note that AMD users may still only see a pink screen, because the OpenGL-DirectX compatibility fails. I will check on a fix again. For SteamVR on Linux we may have to wait for until it supports OpenGL rendering for OpenXR. Alternatively, we *could* add initial Vulkan support at Ghost level and use Vulkan<->OpenGL interoperability extensions, Monado uses these as well.
2020-08-26Fix T77683: Cycles baking crash with motion blur enabled and no cameraPhilipp Oeser
specified Maniphest Tasks: T77683 Differential Revision: https://developer.blender.org/D8593
2020-08-26Fix T79111: Cycles: Image Sequence not renderingPhilipp Oeser
Caused by c7aa0f9d743ee9cafe91b4a51d9f1ecc5e437d71. Since above commit, BKE_image_user_frame_calc requires an image (not just the iuser) to get the framenumber. Cycles used to call this with NULL image (in `image_user_file_path` and `image_user_frame_number`), now pass the image as well. Maniphest Tasks: T79111 Differential Revision: https://developer.blender.org/D8439
2020-08-26MEM_guardedalloc: allow freeing const arrays with MEM_SAFE_FREECampbell Barton
'const' arrays couldn't use this macro with GNUC.
2020-08-26Fix warning when compiling on Linux with WITH_XR_OPENXR enabledJulian Eisel
2020-08-26Fix/workaround graphics issues breaking SteamVR use with BlenderJulian Eisel
Windows only workaround. I'll have to investigate Linux separately. Steam's OpenGL compatibility is still new and doesn't work for us yet (neither does it for standard OpenXR examples from what I've heard and seen myself). We can work around that by falling back to our DirectX compatibility layer. Note that this DirectX compatibility still doesn't work for some systems, see T76082. Implementation note: Since the graphics binding extensions have to be enabled before we can find out which runtime is in use (e.g. SteamVR vs. Oculus, etc), we can now enable multiple graphics binding extensions but settle for a single one to use later. Once the SteamVR OpenGL backend works, we can remove this workaround again. Fixes T78267.
2020-08-26VR: Properly support outputting sRGB swapchain buffersJulian Eisel
Latest SteamVR OpenXR updates brought OpenGL support, but only with sRGB buffers. I think for DirectX it's the same now. It's not a big issue for us to use sRGB buffers, so that's what I will do for now. That way we shouldn't need hardcoded exceptions for specific runtimes that don't transform linear buffers correctly.
2020-08-26Fix T78038: Cycles crash rendering with volume object and motion blurBrecht Van Lommel
2020-08-12Fix T78730: CLOG writes/reads outside allocated memory.Bastien Montagne
Fix several issues in CLOG code: * In `clg_str_reserve`, allocated memory may be bigger than requested one, do not assign the latter back to `cstr->len_alloc`. * `clg_str_vappendf` was mis-interpreting returned value from `vsnprintf`, and completely mixing total allocated memory and extra needed amount of memory to allocate... Simplified code of `clg_str_vappendf` to only have allocating code handled in one place, makes things easier to follow too. Think this should also be beckported to 2.83.
2020-07-13Fix T77984: Cycles OpenCL error rendering empty sceneBrecht Van Lommel
2020-07-02Fix T77095: fix Cycles performance regression with AMD RX cardsBrecht Van Lommel
Apply the workaround only for known problematic drivers. The latest pro driver appears to work correctly, hopefully the regular driver will as well once it is updated to the same OpenCL driver version (3075.13).
2020-07-02Fix random crash in Cycles smoke volume loadingBrecht Van Lommel
Don't access evaluated mesh data after freeing Blender depsgraph. Potentially related to T77954.
2020-06-25Fix T77915: Cycles OSL microfacet closure not working in custom shadersBrecht Van Lommel
The code to implement the newer closure in terms of the old one got lost in the removal of our stdosl.h copy. Now implement it as a builtin closure.
2020-06-25Cycles: Refactor microfacet BSDFs to remove separate anisotropy codeLukas Stockner
Since the sampling and evaluation functions handle both cases anyways, there's not really a point for keeping the distinction in the kernel, so we might as well cut down the number of CLOSURE_BSDF_MICROFACETs a bit. Differential Revision: https://developer.blender.org/D7736
2020-06-25Fix for T77095: work around render artifacts with AMD Radeon RX 4xx and 5xxBrecht Van Lommel
2020-06-18Fix T74101: File Browser in macOS fullscreen crashes or makes windows unusableJulian Eisel
When closing the File Browser window after making it fullscreen, Blender would either crash or all windows would disappear, with no obvious way to bring them back. The "fix" is to not allow fullscreen for File Browsers (or any future "dialog" windows), but only maximizing. From what I can tell that's how secondary windows are supposed to work on macOS. What we previously did seemed like something macOS doesn't handle cleanly, and I didn't find a simple way to do so on our side.
2020-06-18Fix T77603: OSL parser fails when script ends with comment without newlineJacques Lucke
Reviewers: brecht Differential Revision: https://developer.blender.org/D7958
2020-06-03Fix build error for Cycles standaloneBrecht Van Lommel
This does not affect the Blender release. Ref D7915
2020-06-02Revert "Fix T63588: Cycles unnecessarily updates background importance ↵Brecht Van Lommel
sampling map" This reverts commit 33ce0cb5a1edea4b5aaa7d37f6ad74b3b35b95f8. Fix T77273: crash enabling portal lights. The optimization for background updates can be added back later for 2.90 and 2.83.1.
2020-06-02Fix build error in Cycles standalone without guarded allocatorBrecht Van Lommel
Solution suggested by howetuft. Differential Revision: https://developer.blender.org/D7892
2020-06-02Fix T77106: Cycles crash baking with AO shader nodeGarry R. Osgood
Differential Revision: https://developer.blender.org/D7890
2020-05-27Fix T77109: Cycles viewport render crash after object add and undoBrecht Van Lommel
2020-05-27Fix T76947: Optix realtime denoiser progressively reduces brightness of very ↵Patrick Mours
bright objects The input data to the OptiX denoiser was clamped to 0..10000 as required, but it could easily exceed that range with a high number of samples (since the data contains the overall sum). To fix that, divide by the number of samples first and multiply it back in after the denoiser ran.
2020-05-25Fix T76925: more Cycles OpenCL compile errors with some drivers on LinuxBrecht Van Lommel
2020-05-22Fix T76925: Cycles OpenCL compile error with some drivers on LinuxBrecht Van Lommel
2020-05-20Cycles: Fix rendering instanced smoke domain.Jacques Lucke
The problem was that Cycles would store a pointer to an object in `DEGObjectIterData->templ_dupli_object`. This pointer was then accessed when the iterator was already freed. Reviewers: brecht Differential Revision: https://developer.blender.org/D7797
2020-05-19Fix T76812: [Mantaflow] Inflow particles not continuousSebastián Barschkis
Makes use of the new particle skipping option introduced in f25a882955cb.
2020-05-19Fix: build error due to missing definitionsJacques Lucke
Reviewers: sergey, brecht Differential Revision: https://developer.blender.org/D7787
2020-05-19Fix T76697: [Mantaflow] mesh generation does not account for some particlesSebastián Barschkis
Adapted mesh generation to account for domains with disabled fractionstoo.
2020-05-19Fix T72889: Cycles camera motion blur not usng more than 2 stepsJosh Belanich
Differential Revision: https://developer.blender.org/D7782
2020-05-18Fix T76814: [Mantaflow] Surface Tension always worksSebastián Barschkis
Initialize the curvature grid and compute the laplacian only if the diffusion flag is set.
2020-05-14Fix T63588: Cycles unnecessarily updates background importance sampling mapTautvydas Andrikys
2020-05-14Fix T73984: unnecessary Cycles viewport updates with object texture coordinatesBrecht Van Lommel
Remove old code that added extra updates for shaders that have a dependency on objects. The dependency graph can now tell Cycles when a material is affected by an object transform.