blender/intern/cycles/render
Sergey Sharybin ed5dbb0a7b Cycles: Implement extrapolation for RGB curves
Previously RGB Curves node will clamp input to 0..1 which is rather useless
when one wants to use HDR image textures and do bit of correction on them.

Now kernel code supports extrapolation of baked LUT based on first/last two
table points and performs linear extrapolation.

The only tricky part is to guess the range to bake the LUT for. Currently
it's using simple approach -- minmax of the input curves. While this behaves
ok for the simple cases it's easy to trick the system up causing incorrect
results.

Not sure we can solve those issues in a general case and since the new code
is giving more expected results it's not that bad actually. In the worst
case artist migh always create explicit point to make sure LUT is created
for the needed HDR range.

Reviewers: brecht, juicyfruit

Subscribers: sebastian_k

Differential Revision: https://developer.blender.org/D1658
2015-12-06 01:21:14 +05:00
..
attribute.cpp Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
attribute.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
background.cpp Cycles: Support per-render layer world AO settings 2015-11-24 13:21:40 +05:00
background.h Cycles: Support per-render layer world AO settings 2015-11-24 13:21:40 +05:00
bake.cpp Bake-API: reduce memory footprint when baking more than one object (Fix T41092) 2015-04-17 12:25:37 -03:00
bake.h Bake-API: reduce memory footprint when baking more than one object (Fix T41092) 2015-04-17 12:25:37 -03:00
buffers.cpp Cycles: Add debug pass showing average number of ray bounces per pixel 2015-06-11 14:53:15 +02:00
buffers.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
camera.cpp Cycles: Save one transform inversion in the camera sync 2015-11-22 00:58:40 +01:00
camera.h Cycles: Support user-defined shutter curve 2015-10-28 02:43:06 +05:00
CMakeLists.txt Cycles: Use curve approximation for blackbody instead of lookup table 2015-05-05 06:11:54 +00:00
curves.cpp Cycles: Code cleanup, prepare for strict C++ flags 2015-03-27 18:23:31 +05:00
curves.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
film.cpp Cycles: Add Blackman-Harris filter, fix Gaussian filter 2015-11-18 20:50:06 +01:00
film.h Cycles: Add Blackman-Harris filter, fix Gaussian filter 2015-11-18 20:50:06 +01:00
graph.cpp Cycles: Avoid recursion when doing constant fold 2015-12-02 16:19:39 +05:00
graph.h Cycles: Avoid recursion when doing constant fold 2015-12-02 16:19:39 +05:00
image.cpp Cycles: Gracefully handle out-of-memory happening in device vector 2015-10-11 19:41:59 +05:00
image.h Cycles: Increase number of textures allowed for OpenCL render 2015-10-11 18:22:01 +05:00
integrator.cpp Cycles: Fix filter glossy being broken after recent changes 2015-11-20 18:18:27 +05:00
integrator.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
light.cpp Fix T45227: Light optimization commit broke world MIS 2015-06-28 20:47:35 +02:00
light.h Cycles: Ignore light which has no contribution to the scene 2015-06-27 15:13:08 +02:00
mesh_displace.cpp Cycles: Cleanup, whitespace around keywords 2015-10-08 19:08:28 +05:00
mesh.cpp Cleanup: Remove some underlying code for the BVH disk cache. 2015-09-24 15:47:27 +02:00
mesh.h Cycles: Synchronize images after building mesh BVH 2015-04-20 17:29:51 +05:00
nodes.cpp Cycles: Implement extrapolation for RGB curves 2015-12-06 01:21:14 +05:00
nodes.h Cycles: Implement extrapolation for RGB curves 2015-12-06 01:21:14 +05:00
object.cpp Fix T45390: Cycles experimental displacement method ignores scaling when render 2015-07-13 15:24:56 +02:00
object.h Fix T44908: Blender crashes when trying to use cycles experimental displacement 2015-06-02 00:04:30 +05:00
osl.cpp Fix T46782: Updating Shaders very slow with complex nodegraph 2015-11-25 13:46:51 +05:00
osl.h Cycles: Ensure order of shader nodes in the dependnecies set 2015-11-25 13:07:32 +05:00
particles.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
particles.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
scene.cpp Cycles: Support user-defined shutter curve 2015-10-28 02:43:06 +05:00
scene.h Cleanup: Remove some more code for BVH cache. I missed that somehow. 2015-12-01 18:17:28 +01:00
session.cpp Cycles: Make branched path tracer covered with requested features 2015-11-22 13:54:51 +05:00
session.h Cycles: Add utility function to count maximum number of closures used by session 2015-05-09 19:17:49 +05:00
shader.cpp Cycles: Make requested features struct aware of subsurface BSDF 2015-11-21 23:00:29 +05:00
shader.h Cycles: Make requested features struct aware of subsurface BSDF 2015-11-21 23:00:29 +05:00
sky_model_data.h Cycles: Code cleanyp, sky model 2015-03-28 00:28:37 +05:00
sky_model.cpp Cycles: Code cleanyp, sky model 2015-03-28 00:28:37 +05:00
sky_model.h Cycles: Code cleanyp, sky model 2015-03-28 00:28:37 +05:00
sobol.cpp Fix #29528: crash adding subsurf modifier in a particular scene with viewport render. 2011-12-08 21:55:35 +00:00
sobol.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm.cpp Cycles: Fix shader update bug introduced by recent commits 2015-11-25 16:05:57 +05:00
svm.h Cycles: Ensure order of shader nodes in the dependnecies set 2015-11-25 13:07:32 +05:00
tables.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
tables.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
tile.cpp Cycles: Cleanup, whitespace around keywords 2015-10-08 19:08:28 +05:00
tile.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00