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
2017-08-07Fix Cycles shadow catcher objects influencing each other.Brecht Van Lommel
Since all the shadow catchers are already assumed to be in the footage, the shadows they cast on each other are already in the footage too. So don't just let shadow catchers skip self, but all shadow catchers. Another justification is that it should not matter if the shadow catcher is modeled as one object or multiple separate objects, the resulting render should be the same. Differential Revision: https://developer.blender.org/D2763
2017-08-07Fix Windows build errors with recent Cycles SIMD refactoring.Brecht Van Lommel
2017-08-07Cycles: Cleanup, space after keywordSergey Sharybin
2017-08-07Code refactor: use float4 instead of intrinsics for CPU denoise filtering.Brecht Van Lommel
Differential Revision: https://developer.blender.org/D2764
2017-08-07Code refactor: add, remove, optimize various SSE functions.Brecht Van Lommel
* Remove some unnecessary SSE emulation defines. * Use full precision float division so we can enable it. * Add sqrt(), sqr(), fabs(), shuffle variations, mask(). * Optimize reduce_add(), select(). Differential Revision: https://developer.blender.org/D2764
2017-08-07Code refactor: split defines into separate header, changes to SSE type headers.Brecht Van Lommel
I need to use some macros defined in util_simd.h for float3/float4, to emulate SSE4 instructions on SSE2. But due to issues with order of header includes this was not possible, this does some refactoring to make it work. Differential Revision: https://developer.blender.org/D2764
2017-08-07Cycles: remove option to disable transparent shadows globally.Brecht Van Lommel
We already detect this automatically based on shading nodes and per shader settings, and performance of this option is ok now all devices. Differential Revision: https://developer.blender.org/D2767
2017-08-07Fix Cycles CUDA adaptive megakernel build error.Brecht Van Lommel
2017-08-05Cycles: CUDA split performance tweaks, still far from megakernel.Brecht Van Lommel
On Pabellon, 25.8s mega, 35.4s split before, 32.7s split after.
2017-08-05Cycles: remove min bounces, modify RR to terminate less.Brecht Van Lommel
Differential Revision: https://developer.blender.org/D2766
2017-08-03Cycles: Extra tweaks to performance of header expansionSergey Sharybin
Two main things here: 1. Replace all unsafe for #line directive characters into a single loop, avoiding multiple iterations and multiple temporary strings created. 2. Don't merge token char by char but calculate start and end point and then copy all substring at once. This gives about 15% speedup of source processing time. At this point (with all previous commits from today) we've shrinked down compiled sources size from 108 MB down to ~5.5 MB and lowered processing time from 4.5 sec down to 0.047 sec on my laptop running Linux (this was a constant time which Blender will always spent first time loading kernel, even if we've got compiled clbin).
2017-08-03mikktspace: minor optimizationCampbell Barton
Add a safe version of normalize since all uses of normalize did zero length checks, move this into a function. Also avoid unnecessary conversion. Gives minor speedup here (approx 3-5%).
2017-08-02Cycles: Avoid some expensive operations in header expansionsSergey Sharybin
Basically gather lines as-is during traversal, avoiding allocating memory for all the lines in headers. Brings additional performance improvement abut 20%.
2017-08-02Cycles: Support "precompiled" headers in include expansion algorithmSergey Sharybin
The idea here is that it is possible to mark certain include statements as "precompiled" which means all subsequent includes of that file will be replaced with an empty string. This is a way to deal with tricky include pattern happening in single program OpenCL split kernel which was including bunch of headers about 10 times. This brings preprocessing time from ~1sec to ~0.1sec on my laptop.
2017-08-02Cycles: Speed up #include expansion algorithmSergey Sharybin
The idea is to re-use files which were already processed. Gives about 4x speedup of processing time (~4.5sec vs 1.0sec) on my laptop for the whole OpenCL kernel. For users it will mean lower delay before OpenCL rendering might start.
2017-07-27Cleanup: remove check for old GCC&PPCCampbell Barton
2017-07-25Fix T51450: viewport render time keeps increasing after render is done.Jeff Knox
Reviewed By: brecht Differential Revision: https://developer.blender.org/D2747
2017-07-24Fix T51948: pen pressure not detected with some Wacom tablets.James Fulop
Generalizes current conditions, QT implements it the same way.
2017-07-24Fix Cycles multi scatter GGX different render results with Clang and GCC.Brecht Van Lommel
The order of evaluation of function arguments is undefined, and the order was reversed between these compilers. This was causing regressions tests to give different results between Linux and macOS.
2017-07-23Fix T52152: allow zero roughness for Cycles principled BSDF, don't clamp.Brecht Van Lommel
2017-07-23Fix Cycles denoising NaNs with a 1 sample renders.Brecht Van Lommel
This was causing different render results with different compilers. We can't do much useful with 1 sample, but better for debugging.
2017-07-22Fix use of uninitialized value in Cycles, probably did not cause a bug.Brecht Van Lommel
2017-07-21Fix a few harmless maybe uninitialized warnings with GCC 5.4.Brecht Van Lommel
GCC seems to detect uninitialized into function calls now, but then isn't always smart enough to see that it is actually initialized. Disabling this warning entirely seems a bit too much, so initialize a bit more now.
2017-07-21Fix T52135: Cycles should not keep generated/packed images in memory after ↵Brecht Van Lommel
render.
2017-07-21Fix potential memory leak in Cycles loading of packed/generated images.Brecht Van Lommel
2017-07-20Fix T52125: principled BSDF missing with macOS OpenCL.Brecht Van Lommel
2017-07-20Cycles: fixed the SM_2x CUDA kernel build that I broke in my previous commitStefan Werner
2017-07-20Fix T52107: Color management difference when using multiple and different ↵Stefan Werner
GPUs together This commit unifies the flattened texture slot names for bindless and regular CUDA textures. Texture indices are now identical across all CUDA architectures, where before Fermi used different indices, which lead to problems when rendering on multi-GPU setups mixing Fermi with newer hardware.
2017-07-18Fix T49498: continuous grab issues on macOS, particularly with gaming mouses.Brecht Van Lommel
Change the implementation so it no longer takes over the mouse cursor motion from the OS, instead only move it when warping, similar to Windows and X11. Probably the reason it was not done this way originally is that you then get a 500ms delay after warping, but we can use a trick to avoid that and get much smoother mouse motion than before.
2017-07-18Fix T52021: Shadow catcher renders wrong when catcher object is behind ↵Sergey Sharybin
transparent object Tweaked the path radiance summing and alpha to accommodate for possible contribution of light by transparent surface bounces happening prior to shadow catcher intersection. This commit will change the way how shadow catcher results looks when was behind semi transparent object, but the old result seemed to be fully wrong: there were big artifacts when alpha-overing the result on some actual footage.
2017-07-18Cycles: Remove meaningless camera ray checkSergey Sharybin
In branched path tracing main loop is always a camera ray, with varying number of transparent bounces.
2017-07-12Cycles: Enable SSS from Principled BSDF only when actually in useMai Lavelle
This gives speed up for the split kernel in scenes using the principled BSDF but without subsurface scattering.
2017-07-12Cycles: Fix comparison in principled BSDFMai Lavelle
Could have lead to black pixels.
2017-07-11Fix T52027: OSL getattribute() crash, when optimizer calls it before rendering.Brecht Van Lommel
2017-07-11Cycles: Disable OpenCL clFlush workaroundsSergey Sharybin
This is something which was reported to work fine by Mai, Benjamin and confirmed by myself. Disabling this workaround gains us some speedup: Before Now bmw27 04:28.42 04:07.79 classroom 09:26.48 08:54.53 fishy_cat 08:44.01 08:18.70 koro 09:17.98 08:57.18 pavillon_barcelone 12:26.64 11:52.81 Test environment is: - Ubuntu 16.04, with all updates installed - AMD RX 480 GPU - amdgpu pro driver version 17.10-450821
2017-07-11Opensubdiv: Fix compilation error with older Opensubdiv versionsSergey Sharybin
2017-07-08Fix T51959: Windows + Intel GPU offset between UI drawing and mouse.Brecht Van Lommel
Unfortunately this means disabling the code that ensures the title bar is properly scaled with DPI, however better to have that as a cosmetic issue than Blender being unusable with a lot of Intel GPUs.
2017-07-08Fix T51967: OSL crash after rendering finished (mainly on Windows).Brecht Van Lommel
2017-07-07Cycles: Fix ambiguity in call of min() functionSergey Sharybin
2017-07-07Fix T51980: Motion Tracking - png image files appear in the Blender program ↵Sergey Sharybin
directory when using refine Residue of debug code remained form some older bug fix.
2017-07-06Cycles: Add artificial memory limit debug option for OpenCLMai Lavelle
2017-07-06Revert "Cycles: use std::min and max for extra overloads"Mai Lavelle
We already have this in util_algorithm.h This reverts commit cff172c7621d89773baa99a9460f19056efb5f1e.
2017-07-06Cycles: Dont allow global size to fall to zeroMai Lavelle
2017-07-06Cycles: Detect out of memory before buffer allocation in OpenCL devicesMai Lavelle
2017-07-06Cycles: use std::min and max for extra overloadsMai Lavelle
2017-07-05Cycles: Fix compilation error after recent logging changesSergey Sharybin
This file uses std::ostream for helper << operators, so need to make sure corresponding header is included.
2017-07-05Cycles: Pass string by const reference rather than by valueSergey Sharybin
Some of the functions might have been inlined, but others i don't see how that was possible (don't think virtual functions can be inlined here). In any case, better be explicitly optimal in the code.
2017-07-05Cycles: Fix compilation error when building without Glog and no C++11Sergey Sharybin
2017-07-03Fix T51950: Abnormally long Cycles OpenCL GPU render times with certain ↵Lukas Stockner
panoramic camera settings The problem here was that when a "invalid" path is generated by the panoramic camera, it was tagged as RAY_TO_REGENERATE with the intention of generating a new path in kernel_buffer_update. However, since that state was not handled in kernel_queue_enqueue, kernel_buffer_update did not process the path which resulted in an infinite loop.
2017-07-03Cycles: Add missing split kernel to CPUDeviceLukas Stockner