Random User Interface Colour Change (2.91+ Regression?) #86450

Closed
opened 2021-03-10 09:03:45 +01:00 by Alaska · 15 comments
Member

System Information
Operating system: Linux-5.10.0-3-amd64-x86_64-with-glibc2.31 64 Bits
Graphics card: RTX 3070 460.56

Operating system: Windows-10-10.0.19041-SP0 64 Bits
Graphics card: RTX 3070 461.72

Blender Version:
Broken: 2.91 release, 2.92 release, 2.93.0 Alpha 70e73974b5 2021-03-10 04:47
Worked: 2.90 and below

Caused by 7e3967ed37 (@Alaska bisected).

Note from @Alaska
Take this bisect with caution. This commit being the cause doesn't line up 100% with recent observations.

Short description of error:
Ever since Blender 2.91 I have experienced this bug where certain aspects of the UI will change colour on occasion. The areas I've seen this issue occur the most are high lighted in the image below.
Affected Regions.png

This flickering seems to occur when two parts of the UI are being updated at the same time? I'm not really sure. The bug seems to occur during a change somewhere in the UI (Clicking on a box, deselecting a bunch of objects, etc), but the same actions don't always trigger this bug. There can even be long stretches of time where this bug does not occur. Hence why I have not reported it, as I've had a hard time finding a reliable way to reproduce it. However, I have found a way to reliably reproduce this issue. It can be done with a third party add-on (shown in the two videos below) or with Blender with factory defaults (as shown in the steps below)

Here's some videos showing off the issue.

This is the area where the bug occurs in the video:

Affected part of video.png

GPU rendering Linux.mp4 Windows.mp4
Linux (GPU rendering) Windows (GPU rendering)

I have done three tests (Linux with GPU rendering, Linux with Software Rendering, Windows with GPU rendering) because at first I thought this might be an issue with my Linux installation or the drivers I have. So after testing Linux with GPU rendering, I tested Software Rendering, and that shows the issue, suggesting the issue isn't the GPU driver. Then I tested Windows just to make sure it's not a Linux thing, and seeing the issue show up on Windows shows it's not a Linux thing.

Exact steps for others to reproduce the error:
Unreliable method:

  1. Use Blender for an extended period of time. At some point you may bump into this issue.

Reliable method: (for me at least)

  1. In a new file, change the render engine to Cycles and select GPU compute.
  2. Disable viewport overlays in the 3D viewport.
  3. Split the 3D viewport in two and change one of them to a shader editor
  4. Entered rendered view in the 3D viewport.
  5. Adjust numerical render settings that affect Cycles rendering, causing a viewport refresh. The way you adjust these numbers is you click on it (allowing you to type in a number), then move your mouse to another input field, input a value, and press enter. (In my case, I used AO distance in the Fast GI Approximation section of the Light Paths panel of Render properties).

This change in colour in the UI will be found in the shader editor here:
#86450 - Location of UI flicker.png

Here's a video demonstrating it:
#86450 - Updated demonstation.mp4


Old method: Do not use.

Reliable method (for me - same as videos above):

  1. Install the Scatter add-on by BD3D (https://blendermarket.com/products/scatter). Sorry, it costs money. There are probably other add-ons similar to this one that would allow the easy reproduction of this bug.
  2. Open up a shader editor beside the 3D viewport.
  3. Open the "Properties Panel" in the 3D viewport with N, switch to the Scatter tab and hover your mouse over the Image area and you should see this bug.

Note: I only got the Scatter add-on yesterday (as of the time of writing). I have been experiencing this bug for a few months. The Scatter add-on is not the cause (or I don't believe). During the past few months without the Scatter add-on, I did not have any other add-ons installed (outside of the defaults like Cycles). So I do not believe add-ons are the cause.

**System Information** Operating system: Linux-5.10.0-3-amd64-x86_64-with-glibc2.31 64 Bits Graphics card: RTX 3070 460.56 Operating system: Windows-10-10.0.19041-SP0 64 Bits Graphics card: RTX 3070 461.72 **Blender Version:** Broken: 2.91 release, 2.92 release, 2.93.0 Alpha `70e73974b5` 2021-03-10 04:47 Worked: 2.90 and below Caused by 7e3967ed37 (@Alaska bisected). > Note from @Alaska > Take this bisect with caution. This commit being the cause doesn't line up 100% with recent observations. **Short description of error:** Ever since Blender 2.91 I have experienced this bug where certain aspects of the UI will change colour on occasion. The areas I've seen this issue occur the most are high lighted in the image below. ![Affected Regions.png](https://archive.blender.org/developer/F9882491/Affected_Regions.png) This flickering seems to occur when two parts of the UI are being updated at the same time? I'm not really sure. The bug seems to occur during a change somewhere in the UI (Clicking on a box, deselecting a bunch of objects, etc), but the same actions don't always trigger this bug. There can even be long stretches of time where this bug does not occur. Hence why I have not reported it, as I've had a hard time finding a reliable way to reproduce it. However, I have found a way to reliably reproduce this issue. It can be done with a third party add-on (shown in the two videos below) or with Blender with factory defaults (as shown in the steps below) Here's some videos showing off the issue. This is the area where the bug occurs in the video: ![Affected part of video.png](https://archive.blender.org/developer/F9882527/Affected_part_of_video.png) |[GPU rendering Linux.mp4](https://archive.blender.org/developer/F9882499/GPU_rendering_Linux.mp4)|[Windows.mp4](https://archive.blender.org/developer/F9882505/Windows.mp4)| | -- | -- | |Linux (GPU rendering)|Windows (GPU rendering)| I have done three tests (Linux with GPU rendering, Linux with Software Rendering, Windows with GPU rendering) because at first I thought this might be an issue with my Linux installation or the drivers I have. So after testing Linux with GPU rendering, I tested Software Rendering, and that shows the issue, suggesting the issue isn't the GPU driver. Then I tested Windows just to make sure it's not a Linux thing, and seeing the issue show up on Windows shows it's not a Linux thing. **Exact steps for others to reproduce the error:** **Unreliable method:** 1. Use Blender for an extended period of time. At some point you may bump into this issue. Reliable method: (for me at least) 1. In a new file, change the render engine to Cycles and select GPU compute. 2. Disable viewport overlays in the 3D viewport. 3. Split the 3D viewport in two and change one of them to a shader editor 4. Entered rendered view in the 3D viewport. 5. Adjust numerical render settings that affect Cycles rendering, causing a viewport refresh. The way you adjust these numbers is you click on it (allowing you to type in a number), then move your mouse to another input field, input a value, and press enter. (In my case, I used AO distance in the `Fast GI Approximation` section of the `Light Paths` panel of `Render properties`). This change in colour in the UI will be found in the shader editor here: ![#86450 - Location of UI flicker.png](https://archive.blender.org/developer/F9930022/T86450_-_Location_of_UI_flicker.png) Here's a video demonstrating it: [#86450 - Updated demonstation.mp4](https://archive.blender.org/developer/F9930020/T86450_-_Updated_demonstation.mp4) --- **Old method: Do not use.** > **Reliable method (for me - same as videos above):** > 1. Install the `Scatter` add-on by BD3D (https://blendermarket.com/products/scatter). Sorry, it costs money. There are probably other add-ons similar to this one that would allow the easy reproduction of this bug. > 2. Open up a shader editor beside the 3D viewport. > 3. Open the "Properties Panel" in the 3D viewport with `N`, switch to the `Scatter` tab and hover your mouse over the `Image area` and you should see this bug. > > Note: I only got the `Scatter` add-on **yesterday (as of the time of writing)**. I have been experiencing this bug for a few months. The `Scatter` add-on is not the cause (or I don't believe). During the past few months without the `Scatter` add-on, I did not have any other add-ons installed (outside of the defaults like Cycles). So I do not believe add-ons are the cause.
Author
Member

Added subscriber: @Alaska

Added subscriber: @Alaska
Member

Added subscriber: @filedescriptor

Added subscriber: @filedescriptor
Member

It would be good to have a way of reproducing it without relying on an addon (that is not included with blender). Will mark this as a UI papercut for now.

It would be good to have a way of reproducing it without relying on an addon (that is not included with blender). Will mark this as a UI papercut for now.
Author
Member

In #86450#1127321, @filedescriptor wrote:
It would be good to have a way of reproducing it without relying on an addon (that is not included with blender). Will mark this as a UI papercut for now.

I'm sorry I don't have a reliable way that doesn't use an add-on. The bug just seems to occur at random when not using this add-on and I can't figure out why.

As a side note, I decided to bisect the issue and found this commit to be the culprit (from my testing) 7e3967ed37
I have confirmed that this commit is the culprit by testing this commit and the previous commit multiple times and transplanting the affected file from a previous revision of Blender into master (2.93).

> In #86450#1127321, @filedescriptor wrote: > It would be good to have a way of reproducing it without relying on an addon (that is not included with blender). Will mark this as a UI papercut for now. I'm sorry I don't have a reliable way that doesn't use an add-on. The bug just seems to occur at random when not using this add-on and I can't figure out why. As a side note, I decided to bisect the issue and found this commit to be the culprit (from my testing) 7e3967ed37 I have confirmed that this commit is the culprit by testing this commit and the previous commit multiple times and transplanting the affected file from a previous revision of Blender into master (2.93).
Author
Member

This factor of the code being the culprit is also supported by the fact that disabling Gizmos in the 3D viewport resolves this issue, even when using the add-on.

This factor of the code being the culprit is also supported by the fact that disabling `Gizmos` in the 3D viewport resolves this issue, even when using the add-on.
Author
Member

@filedescriptor I believe I have found another way to reproduce the bug. I'm not sure why this way works, but it works for me. Some steps are not necessary, but seem to make it more re-producable.

  1. In a new file, change the render engine to Cycles and select GPU compute.
  2. Disable viewport overlays in the 3D viewport.
  3. Split the 3D viewport in two so you have a shader editior and 3D viewport open side by side.
  4. Entered rendered view in the 3D viewport.
  5. Adjust numerical render settings that affect Cycles rendering, causing a viewport refresh. The way you adjust these numbers is you click on it (allowing you to type in a number), then move your mouse to another input field, input a value, and press enter. (In my case, I used AO distance in the Fast GI Approximation section of the Light Paths panel of Render properties).

This change in colour in the UI will be found in the shader editor here:
#86450 - Location of UI flicker.png

Here's a video demonstrating it:
#86450 - Updated demonstation.mp4

@filedescriptor I believe I have found another way to reproduce the bug. I'm not sure why this way works, but it works for me. Some steps are not necessary, but seem to make it more re-producable. 1. In a new file, change the render engine to Cycles and select GPU compute. 2. Disable viewport overlays in the 3D viewport. 3. Split the 3D viewport in two so you have a shader editior and 3D viewport open side by side. 4. Entered rendered view in the 3D viewport. 5. Adjust numerical render settings that affect Cycles rendering, causing a viewport refresh. The way you adjust these numbers is you click on it (allowing you to type in a number), then move your mouse to another input field, input a value, and press enter. (In my case, I used AO distance in the `Fast GI Approximation` section of the `Light Paths` panel of `Render properties`). This change in colour in the UI will be found in the shader editor here: ![#86450 - Location of UI flicker.png](https://archive.blender.org/developer/F9930022/T86450_-_Location_of_UI_flicker.png) Here's a video demonstrating it: [#86450 - Updated demonstation.mp4](https://archive.blender.org/developer/F9930020/T86450_-_Updated_demonstation.mp4)
Member

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'
Member

I was able to reproduce this on the latest 2.93.0 Alpha, branch: master, commit date: 2021-04-14 12:25, hash: b9207fb43d.

I was able to reproduce this on the latest 2.93.0 Alpha, branch: master, commit date: 2021-04-14 12:25, hash: `b9207fb43d`.
Member

Added subscriber: @JulianEisel

Added subscriber: @JulianEisel
Member

There seem to be multiple ways to trigger this, not just the add-on. It also appeared while testing D8084 and in the asset-browser-poselib branch when selecting poses from the asset view (sidebar), see #87623.

There seem to be multiple ways to trigger this, not just the add-on. It also appeared while testing [D8084](https://archive.blender.org/developer/D8084) and in the `asset-browser-poselib` branch when selecting poses from the asset view (sidebar), see #87623.
Author
Member

I know I said the bug was initially caused by 7e3967ed37 but some of the stuff I've seen recently doesn't line up with that observation. Maybe I bisected incorrectly or this bug is now occurring in more places due to other commits.

I will look into bisecting again and see what else I can find.

I know I said the bug was initially caused by 7e3967ed37 but some of the stuff I've seen recently doesn't line up with that observation. Maybe I bisected incorrectly or this bug is now occurring in more places due to other commits. I will look into bisecting again and see what else I can find.

Added subscriber: @ideasman42

Added subscriber: @ideasman42

This was caused by 405a5d3bd7.

For reference another way to reproduce the bug as I couldn't use the method from this report.

With this blend file split_icon_dark.blend:

  • Hover your mouse cursor over the toolbar (ensure the tool-bar's scroll-bar is visible).
  • Press Ctrl-Space twice.
  • Notice the top left area switcher draws much darker.

Example video:

T86450_example.mp4

This was caused by 405a5d3bd7. For reference another way to reproduce the bug as I couldn't use the method from this report. With this blend file [split_icon_dark.blend](https://archive.blender.org/developer/F10046570/split_icon_dark.blend): - Hover your mouse cursor over the toolbar (ensure the tool-bar's scroll-bar is visible). - Press Ctrl-Space twice. - Notice the top left area switcher draws much darker. Example video: [T86450_example.mp4](https://archive.blender.org/developer/F10046573/T86450_example.mp4)

This issue was referenced by b7f3ebe014

This issue was referenced by b7f3ebe014a250c417f7d0810aa102067979477d

Changed status from 'Confirmed' to: 'Resolved'

Changed status from 'Confirmed' to: 'Resolved'
Campbell Barton self-assigned this 2021-05-01 16:13:14 +02:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#86450
No description provided.