diff options
Diffstat (limited to 'intern/cycles/scene/bake.cpp')
-rw-r--r-- | intern/cycles/scene/bake.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/intern/cycles/scene/bake.cpp b/intern/cycles/scene/bake.cpp index 1947b9d71a4..768e723b587 100644 --- a/intern/cycles/scene/bake.cpp +++ b/intern/cycles/scene/bake.cpp @@ -16,6 +16,7 @@ CCL_NAMESPACE_BEGIN BakeManager::BakeManager() { need_update_ = true; + use_camera_ = false; } BakeManager::~BakeManager() @@ -38,6 +39,14 @@ void BakeManager::set(Scene *scene, const std::string &object_name_) need_update_ = true; } +void BakeManager::set_use_camera(const bool use_camera) +{ + if (use_camera_ != use_camera) { + use_camera_ = use_camera; + need_update_ = true; + } +} + void BakeManager::device_update(Device * /*device*/, DeviceScene *dscene, Scene *scene, @@ -49,6 +58,8 @@ void BakeManager::device_update(Device * /*device*/, KernelBake *kbake = &dscene->data.bake; memset(kbake, 0, sizeof(*kbake)); + kbake->use_camera = use_camera_; + if (!object_name.empty()) { scoped_callback_timer timer([scene](double time) { if (scene->update_stats) { |