diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-05-09 17:05:49 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-05-09 17:05:49 +0300 |
commit | 0e4ddaadd487ebdd80399e2fd24cb8b12bd7f721 (patch) | |
tree | e0ddd2d136854de2c70cc5ee92dfe4030d4cf331 /intern/cycles/render/session.cpp | |
parent | d69c80f717e9dc9efc1325653b0c87fbb2254af9 (diff) |
Cycles: Change the way how we pass requested capabilities to the device
Previously we only had experimental flag passed to device's load_kernel() which
was all fine. But since we're gonna to have some extra parameters passed there
it makes sense to wrap them into a single struct, which will make it easier to
pass stuff around.
Diffstat (limited to 'intern/cycles/render/session.cpp')
-rw-r--r-- | intern/cycles/render/session.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp index 5b3826c0ea9..82197d5340a 100644 --- a/intern/cycles/render/session.cpp +++ b/intern/cycles/render/session.cpp @@ -593,6 +593,13 @@ void Session::run_cpu() update_progressive_refine(true); } +DeviceRequestedFeatures Session::get_requested_device_features() +{ + DeviceRequestedFeatures requested_features; + requested_features.experimental = params.experimental; + return requested_features; +} + void Session::load_kernels() { thread_scoped_lock scene_lock(scene->mutex); @@ -600,7 +607,7 @@ void Session::load_kernels() if(!kernels_loaded) { progress.set_status("Loading render kernels (may take a few minutes the first time)"); - if(!device->load_kernels(params.experimental)) { + if(!device->load_kernels(get_requested_device_features())) { string message = device->error_message(); if(message.empty()) message = "Failed loading render kernel, see console for errors"; |