diff options
Diffstat (limited to 'intern/cycles/scene/scene.cpp')
-rw-r--r-- | intern/cycles/scene/scene.cpp | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/intern/cycles/scene/scene.cpp b/intern/cycles/scene/scene.cpp index 18cd665ac74..3a05bede7a3 100644 --- a/intern/cycles/scene/scene.cpp +++ b/intern/cycles/scene/scene.cpp @@ -439,9 +439,9 @@ bool Scene::need_data_update() film->is_modified() || procedural_manager->need_update()); } -bool Scene::need_reset() +bool Scene::need_reset(const bool check_camera) { - return need_data_update() || camera->is_modified(); + return need_data_update() || (check_camera && camera->is_modified()); } void Scene::reset() @@ -497,9 +497,6 @@ void Scene::update_kernel_features() if (params.hair_shape == CURVE_THICK) { kernel_features |= KERNEL_FEATURE_HAIR_THICK; } - if (use_motion && camera->use_motion()) { - kernel_features |= KERNEL_FEATURE_CAMERA_MOTION; - } /* Figure out whether the scene will use shader ray-trace we need at least * one caustic light, one caustic caster and one caustic receiver to use @@ -520,9 +517,6 @@ void Scene::update_kernel_features() if (object->use_motion() || geom->get_use_motion_blur()) { kernel_features |= KERNEL_FEATURE_OBJECT_MOTION; } - if (geom->get_use_motion_blur()) { - kernel_features |= KERNEL_FEATURE_CAMERA_MOTION; - } } if (object->get_is_shadow_catcher()) { kernel_features |= KERNEL_FEATURE_SHADOW_CATCHER; @@ -555,6 +549,10 @@ void Scene::update_kernel_features() kernel_features |= KERNEL_FEATURE_MNEE; } + if (integrator->get_guiding_params(device).use) { + kernel_features |= KERNEL_FEATURE_PATH_GUIDING; + } + if (bake_manager->get_baking()) { kernel_features |= KERNEL_FEATURE_BAKING; } @@ -590,8 +588,6 @@ static void log_kernel_features(const uint features) { VLOG_INFO << "Requested features:\n"; VLOG_INFO << "Use BSDF " << string_from_bool(features & KERNEL_FEATURE_NODE_BSDF) << "\n"; - VLOG_INFO << "Use Principled BSDF " << string_from_bool(features & KERNEL_FEATURE_PRINCIPLED) - << "\n"; VLOG_INFO << "Use Emission " << string_from_bool(features & KERNEL_FEATURE_NODE_EMISSION) << "\n"; VLOG_INFO << "Use Volume " << string_from_bool(features & KERNEL_FEATURE_NODE_VOLUME) << "\n"; @@ -611,8 +607,6 @@ static void log_kernel_features(const uint features) << "\n"; VLOG_INFO << "Use Object Motion " << string_from_bool(features & KERNEL_FEATURE_OBJECT_MOTION) << "\n"; - VLOG_INFO << "Use Camera Motion " << string_from_bool(features & KERNEL_FEATURE_CAMERA_MOTION) - << "\n"; VLOG_INFO << "Use Baking " << string_from_bool(features & KERNEL_FEATURE_BAKING) << "\n"; VLOG_INFO << "Use Subsurface " << string_from_bool(features & KERNEL_FEATURE_SUBSURFACE) << "\n"; VLOG_INFO << "Use Volume " << string_from_bool(features & KERNEL_FEATURE_VOLUME) << "\n"; |