blender/intern
Lukas Stockner b459d9f46c Cycles: Stop lamp sampling if the lamp isn't visible
Both spot and area light have large areas where they're not visible.
Therefore, this patch stops the light sampling code when one of these cases (outside of the spotlight cone or behind the area light) occurs, before the lamp shader is evaluated.
In the case of the area light, the solid angle sampling can also be skipped.

In a test scene with Sample All Lights and 18 Area lamps and 9 Spot lamps that all point away from the area that the camera sees, render time drops from 12sec to 5sec.

Reviewers: brecht, sergey, dingto, juicyfruit

Differential Revision: https://developer.blender.org/D2216
2016-09-14 19:45:12 +02:00
..
atomic Fix building on NetBSD 2016-07-19 22:04:14 +10:00
audaspace Audapsace: Make it work with Jack and no libjack-dev package installed 2016-08-01 20:39:54 +02:00
container Remove SCons building system 2016-01-04 14:20:48 +05:00
cycles Cycles: Stop lamp sampling if the lamp isn't visible 2016-09-14 19:45:12 +02:00
decklink Cleanup: comment blocks 2016-07-02 10:08:33 +10:00
dualcon Remove SCons building system 2016-01-04 14:20:48 +05:00
eigen Remove SCons building system 2016-01-04 14:20:48 +05:00
elbeem Cleanup: Reduce amount of misleading indentation 2016-09-01 12:14:16 +02:00
ffmpeg Fix compilation error with FFmpeg and Ubuntu Trusty 2016-02-19 22:05:06 +01:00
ghost fix Mac build with Xcode 8 2016-09-14 16:35:01 +02:00
glew-mx Remove SCons building system 2016-01-04 14:20:48 +05:00
gpudirect Cleanup: comment blocks 2016-07-02 10:08:33 +10:00
guardedalloc Cleanup: comment blocks 2016-07-15 02:39:45 +10:00
iksolver CMake: add missing headers 2016-04-12 11:22:30 +10:00
itasc Cleanup: Reduce amount of misleading indentation 2016-09-01 12:14:16 +02:00
libmv fix comparison of identicals 2016-07-21 18:16:08 -04:00
locale Remove SCons building system 2016-01-04 14:20:48 +05:00
memutil Remove SCons building system 2016-01-04 14:20:48 +05:00
mikktspace Cleanup: warning 2016-03-13 15:15:38 +11:00
moto BGE: Various render improvements. 2016-06-11 22:05:20 +02:00
opencolorio Cleanup: glsl style 2016-05-26 18:53:09 +10:00
opensubdiv Fix OpenSubdiv related buffer overrun with multiple FVar channels. 2016-09-10 21:15:52 +03:00
openvdb Fix T48236: OpenVDB smoke cache glitches out with smokeless flames. 2016-04-22 11:46:02 +02:00
rigidbody Remove SCons building system 2016-01-04 14:20:48 +05:00
smoke Fix T43220, T47551: collider scaling or rotation causes smoke to explode. 2016-08-02 19:47:31 +03:00
string Remove SCons building system 2016-01-04 14:20:48 +05:00
utfconv Remove SCons building system 2016-01-04 14:20:48 +05:00
CMakeLists.txt BGE: DeckLink card support for video capture and streaming. 2016-06-11 22:26:05 +02:00