EEVEE-Next: Disable viewport motion blur outside of playback

Avoid motion blur on regular scene editing.

Pull Request: https://projects.blender.org/blender/blender/pulls/119484
This commit is contained in:
Miguel Pozo 2024-03-18 20:39:38 +01:00
parent 0d7ac2542e
commit 58eab5e3be
2 changed files with 13 additions and 1 deletions

View file

@ -223,6 +223,11 @@ class Instance {
return render == nullptr && !is_baking();
}
bool is_image_render() const
{
return DRW_state_is_image_render();
}
bool is_viewport_image_render() const
{
return DRW_state_is_viewport_image_render();
@ -238,6 +243,11 @@ class Instance {
return overlays_enabled_;
}
bool is_playback() const
{
return DRW_state_is_playback();
}
bool use_scene_lights() const
{
return (!v3d) ||

View file

@ -28,7 +28,9 @@ void MotionBlurModule::init()
const Scene *scene = inst_.scene;
const ViewLayer *view_layer = inst_.view_layer;
enabled_ = (scene->r.mode & R_MBLUR) != 0;
/* Disable on viewport outside of animation playback,
* since it can get distracting while editing the scene. */
enabled_ = (scene->r.mode & R_MBLUR) != 0 && (inst_.is_image_render() || inst_.is_playback());
if (enabled_) {
enabled_ = (view_layer->layflag & SCE_LAY_MOTION_BLUR) != 0;
}