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
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.
2020-05-14Fix --debug-cycles printing CUDA devices twiceBrecht Van Lommel
Reuse the CUDA devices list for Optix device detection.
2020-05-14Cleanup: don't use deprecated exception specificationsJacques Lucke
Usage of exception specifications is discouraged by the C++ core guidelines.
2020-05-12Fix incorrect assert in Cycles node socket get/set functionsBrecht Van Lommel
Thanks to Subrahmanya Oruganti for spotting these.
2020-05-12Fix T76507: Reading clipboard blocks keyboard input on X11Campbell Barton
2020-05-12Fix T75889: Cannot bake mantaflow via Python APIJacques Lucke
The issue was the usage of the global `__main__` Python module. When running scripts in the text editor, Blender would overwrite the `__main__` module. Reviewers: sebbas Differential Revision: https://developer.blender.org/D7690
2020-05-12Fluid: remove special treatment for running Python code on windowsJacques Lucke
We discussed this in D7690 and could not find a reason for this code anymore. It might just be leftover from some even older code.
2020-05-07VR: Fix OpenXR state freeze on Oculus after taking off HMDNicolas Fauvet
With the Oculus runtime, the VR session would freeze when taking off the HMD and putting it back on. This was caused by the deletion of graphics resources too early in the OpenXR state machine, at least for Oculus. The resources will now only be freed once the session is actually destroyed. Also fixes an issue where it wasn't possible to stop the session via the UI when the HMD was taken off. Reviewed By: Julian Eisel Differential Revision: https://developer.blender.org/D7635
2020-05-07Fix T76469: OpenCL 1.2 CompilationJeroen Bakker
Recent changes assumed OpenCL 2.0 platform. This adds a check to see if we are compiling on an OpenCL 2.0 platform. Patch was tested on: * AMD Radeon Pro WX 7100 with amdgpu-pro-19.50-1011208-ubuntu-18.04 drivers * AMD Vega 64 with amdgpu-pro-20.10-1048554-ubuntu-18.04 drivers * AMD RX 5700 with amdgpu-pro-20.10-1048554-ubuntu-18.04 drivers Reviewed By: Brecht van Lommel Differential Revision: https://developer.blender.org/D7637
2020-05-06Cleanup: warningsCampbell Barton
2020-05-05Cycles: mark CUDA 10.2 as officially supportedBrecht Van Lommel
It appears to work fine after a recent bugfix and testing for the past few weeks.
2020-05-05Fix Cycles Python error when device name is not a valid UTF-8 stringBrecht Van Lommel
This may fix or help diagnose T76378.
2020-05-04Fix T75883: Smoke simulations with Adaptive Domain broken for 'Final' bakes ↵Sebastián Barschkis
with OpenVDB in 2.83 Config files always use the .uni extenstion.