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-09-13Code cleanup: store branch factor in PathState.Brecht Van Lommel
2017-09-13Code cleanup: avoid used of uninitialized value in case of precision issue.Brecht Van Lommel
2017-09-13Code cleanup: abstract shadow catcher logic more into accumulation code.Brecht Van Lommel
2017-09-13Code cleanup: deduplicate some branched and split kernel code.Brecht Van Lommel
Benchmarks peformance on GTX 1080 and RX 480 on Linux is the same for bmw27, classroom, pabellon, and about 2% faster on fishy_cat and koro.
2017-09-13Code cleanup: tweak inlining for 2% better CUDA performance with hair.Brecht Van Lommel
2017-09-12Cycles: change AO bounces approximation to do more glossy and transmission.Mathieu Menuet
Rather than treating all ray types equally, we now always render 1 glossy bounce and unlimited transmission bounces. This makes it possible to get good looking results with low AO bounces settings, making it useful to speed up interior renders for example. Reviewed By: brecht Differential Revision: https://developer.blender.org/D2818
2017-09-12Fix rare firefly in volume equiangular sampling when sampling short distance.Brecht Van Lommel
2017-09-12Cycles: improve sample stratification on area lights for path tracing.Brecht Van Lommel
Previously we used a 1D sequence to select a light, and another 2D sequence to sample a point on the light. For multiple lights this meant each light would get a random subset of a 2D stratified sequence, which is not guaranteed to be stratified anymore. Now we use only a 2D sequence, split into segments along the X axis, one for each light. The samples that fall within a segment then each are a stratified sequence, at least in the limit. So for example for two lights, we split up the unit square into two segments [0,0.5[ x [0,1[ and [0.5,1[ x [0,1[. This doesn't make much difference in most scenes, mainly helps if you have a few large area lights or some types of HDR backgrounds.
2017-09-12Fix Cycles bug in RR termination, probability should never be > 1.0.Brecht Van Lommel
This causes render differences in some scenes, for example fishy_cat and pabellon scenes render brighter in a few spots. This is an old bug, not due to recent RR changes.
2017-09-12Cycles: Tweaks to avoid compilation error of megakernelSergey Sharybin
Also moved code out of deep-inside ifdef block, otherwise it was quite confusing.
2017-09-08Cycles: Attempt to work around compilation of sm_20 and sm_21Sergey Sharybin
Disabled forceinline for those architectures, which seems to be compiling successfully more often. There might be ~3% slowdown based on quick tests, but better be rendering something rather than failing to compile kernels again and again. Those architectures will be doomed for abandon once we'll switch to toolkit 9.
2017-09-08Cycles: disable fast math flags, only use a subset.Brecht Van Lommel
Empty BVH nodes are set to NaN which must be preserved all the way to the tnear <= tfar test which can then give false for empty nodes. This needs strict semantices and careful argument ordering for min() and max(), so the second argument is used if either of the arguments is NaN. Fixes T52635: crash in BVH traversal with SSE4.1. Differential Revision: https://developer.blender.org/D2828
2017-09-06Fix T52660: CUDA volume texture rendering not working on Fermi GPUs.Brecht Van Lommel
2017-09-06Fix T52661: mesh light shader using backfacing not working, after new sampling.Brecht Van Lommel
2017-09-06Fix T52652: Cycles image box mapping has flipped textures.Brecht Van Lommel
This breaks backwards compatibility some in that 3 sides will be mapped differently now, but difficult to avoid and can be considered a bugfix.
2017-09-05Cycles: Fix compilation error with CUDA after recent changesSergey Sharybin
2017-09-05Fix T52433: Volume Absorption color tintSergey Sharybin
Need to exit the volume stack when shadow ray laves the medium. Thanks Brecht for review and help in troubleshooting!
2017-09-05Cycles: Cleanup, styleSergey Sharybin
2017-09-04Cycles: Fix compilation warningSergey Sharybin
2017-09-04Fix T52533: Blender shuts down when rendering duplicated smoke domainSergey Sharybin
2017-09-01Fix T52472: VSE Audio Volume not set immediatelyJoerg Mueller
Audio mixing is done with volume interpolation. A new handle started at volume 1, now starting at volume 0 for a smooth fade in.
2017-09-01Cycles: follow strict class naming conventionCampbell Barton
2017-08-31Cycles: Cleanup, indentation and trailing whitespaceSergey Sharybin
2017-08-31Cycles: Fix typo in commentSergey Sharybin
2017-08-30Fixing T52477 - switching from custom ray/triangle intersection code to the ↵Stefan Werner
one from util_intersection.h. This fixes the bug and makes the code more readable and maintainable.
2017-08-30Cycles: Fix build with networking enabledMai Lavelle
2017-08-29Fix Cycles Windows render errors with BVH2 CPU rendering.Brecht Van Lommel
One problem is that it was always using __mm_blendv_ps emulation even if the instruction was supported. The other that the emulation function was wrong. Thanks a lot to Ray Molenkamp for tracking this one down.
2017-08-28Atomics: Use system headers directly, without bad level dependency to BLISergey Sharybin
This will make it easier to re-use library as-is in other projects, such as Cycles standalone repo for example.
2017-08-25Fix for fix (tm): Residue of the debug codeSergey Sharybin
2017-08-25Fix mistake in previous tangent space optimizationSergey Sharybin
2017-08-25Cycles: Cleanup, naming of variableSergey Sharybin
Always use b_ prefix for C++ RNA data.
2017-08-25Cycles: Add assert to catch possibly wrong logicSergey Sharybin
2017-08-25Cycles: Mark pixels with negative values as outliersLukas Stockner
If a pixel has negative components, something already went wrong, so the best option is to just ignore it. Should be good for 2.79.
2017-08-25Another optimization of tangent space calculationSergey Sharybin
Don't use quick sort for small arrays, bubble sort works way faster for small arrays due to cache coherency. This is what qsort() from libc is doing actually. We can also experiment unrolling some extra small arrays, for example 3 and 4 element arrays. This reduces tangent space calculation for dragon from 3.1sec to 2.9sec.
2017-08-25Optimize tangent space calculation by inlining functionsSergey Sharybin
Brings tangent space calculation from 4.6sec to 3.1sec for dragon model in BI. Cycles is also somewhat faster, but it has other bottlenecks. Funny thing, using simple `static inline` already gives a lot of speedup here. That's just answering question whether it's OK to leave decision on what to inline up to a compiler..
2017-08-25Cycles: Add utility function to query current value of scoped timerSergey Sharybin
2017-08-25Cycles: Correct logging of sued CPU intrisicsSergey Sharybin
2017-08-25Cycles: Fix stack overflow during traversal caused by floating overflowSergey Sharybin
Would be nice to be able to catch this with assert as well, will see what would be the best way to do this/.\ Need to verify with Mai that this solves crash for her and maybe consider porting this to 2.79.
2017-08-24Cycles: FIx issue with -0 being considered a non-finite valueSergey Sharybin
2017-08-24Fix Cycles CUDA transparent shadow error after recent fix in c22b52c.Brecht Van Lommel
Fishy cat benchmark was rendering with wrong shadows. Cause is unclear, adding printf or rearranging code seems to avoid this issue, possibly a compiler bug. This reverts the fix and solves the OSL bug elsewhere.
2017-08-24Code cleanup: remove shader context.Brecht Van Lommel
This was needed when we accessed OSL closure memory after shader evaluation, which could get overwritten by another shader evaluation. But all closures are immediatley converted to ShaderClosure now, so no longer needed.
2017-08-23Cycles: Add maximum depth stat to bvh builderMai Lavelle
2017-08-23Fix implementation of atomic update max and move to a central locationMai Lavelle
While unlikely to have had any serious effects because of limited use, the previous implementation was not actually atomic due to a data race and incorrectly coded CAS loop. We also had duplicates of this code in a few places, it's now been moved to a single location with all other atomic operations.
2017-08-23Fix T51805: Overlapping volumes renders incorrect on AMD GPUSergey Sharybin
We need to make sure we can store all volume closures for all objects in volume stack. This is a bit tricky to detect what would be the "nestness" level of volumes so for now use maximum possible stack depth. Might cause some slowdown, but better to give reliable render output than to fail quickly. Should be safe for 2.79 after extra eyes.
2017-08-22Fix panorama render crash with split kernel, due to incorrect buffer pointer.Brecht Van Lommel
Also some refactoring to clarify variable usage scope.
2017-08-21Cycles: reorganize Performance panel layout, move viewport BVH type to debug.Brecht Van Lommel
2017-08-21Cycles: attempt to recover from crashing CUDA/OpenCL drivers on Windows.Brecht Van Lommel
I don't know if this will actually work, needs testing. Ref T52064.
2017-08-21Revert "Cycles: remove square samples option."Brecht Van Lommel
This reverts commit 757c24b6bceaeeae95f743b72b6a7040880a0ebf. We'll revisit this when doing deeper sampling changes.
2017-08-21Fix T52470: cycles OpenCL hair rendering not working after recent changes.Brecht Van Lommel
2017-08-20Code cleanup: deduplicate some bsdf node methods.Brecht Van Lommel