diff options
author | Thomas Dinges <blender@dingto.org> | 2015-05-19 13:47:38 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-06-01 17:56:36 +0300 |
commit | b10bc3a6ec4e5b73cec4ac92fb005f1bc7fee4e2 (patch) | |
tree | c0623c953d633b00511ba7ba1aac46a95c4e1f2d /intern/cycles/app/cycles_standalone.cpp | |
parent | 3127d47029603e3f26fcdd815a8dd6bf2c6bfb10 (diff) |
Cycles: Number keys 0-3 can be used in interactive mode now to set max bounces.
Diffstat (limited to 'intern/cycles/app/cycles_standalone.cpp')
-rw-r--r-- | intern/cycles/app/cycles_standalone.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/intern/cycles/app/cycles_standalone.cpp b/intern/cycles/app/cycles_standalone.cpp index 19986912375..b0d49d6ee72 100644 --- a/intern/cycles/app/cycles_standalone.cpp +++ b/intern/cycles/app/cycles_standalone.cpp @@ -21,6 +21,7 @@ #include "device.h" #include "scene.h" #include "session.h" +#include "integrator.h" #include "util_args.h" #include "util_foreach.h" @@ -272,6 +273,7 @@ static void keyboard(unsigned char key) else if(key == 'i') options.interactive = !(options.interactive); + /* Navigation */ else if(options.interactive && (key == 'w' || key == 'a' || key == 's' || key == 'd')) { Transform matrix = options.session->scene->camera->matrix; float3 translate; @@ -294,6 +296,25 @@ static void keyboard(unsigned char key) options.session->reset(session_buffer_params(), options.session_params.samples); } + + /* Set Max Bounces */ + else if(options.interactive && (key == '0' || key == '1' || key == '2' || key == '3')) { + int bounce; + switch(key) { + case '0': bounce = 0; break; + case '1': bounce = 1; break; + case '2': bounce = 2; break; + case '3': bounce = 3; break; + default: bounce = 0; break; + } + + options.session->scene->integrator->max_bounce = bounce; + + /* Update and Reset */ + options.session->scene->integrator->need_update = true; + + options.session->reset(session_buffer_params(), options.session_params.samples); + } } #endif |