System Information
Operating system: Windows-10-10.0.19041-SP0 64 Bits
Graphics card: Dual GeForce RTX 3090/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 461.72
Two monitors with different windows Scaling settings each connected to a different GPU
Blender Version
Broken: version: 2.93.0 Alpha, branch: master, commit date: 2021-03-10 04:47, hash: rB70e73974b593
Worked: Unknown, I don't think this ever worked correctly
Tested under 2.92 and 2.83 LTS, both affected by the issue.
Short description of error
When displaying two windows with the same node editor (Shaders, Compositing or Geometry Nodes) in two windows each on different monitors with different Windows Scaling settings, the node "hotspots" (for dragging, resizing or connecting sockets) on the original window in the main monitor become misaligned with their visual representation, rendering them hard to use.
Exact steps for others to reproduce the error
- Open a new Node Editor (for Materials, World Shaders, Compositing or Geometry Nodes, doesn't matter)
- Add some example nodes, doesn't matter which
- Shift-Drag from a corner of the current node editor to create a new window
- Drag new window to a different monitor with different scale setting, while maintaining the same node tree as the original window
- Now the "hotspots" (areas to trigger mouse actions like dragging to move, socket triggers for dragging, selection etc.) of the original node editor in the main monitor become offset from the visual representation of the nodes, rendering them hard to use.
- This only seems to happen if both monitors use different Scale and Layout settings under windows Display Settings (right-click on the desktop, under Display settings > Scale and layout > Change the size of text, apps, and other items), one of the monitors uses 100% the other was at 125%
- The bug only manifests if the two node trees are displaying the same type of tree (Shaders, Compositing or Geometry Nodes)
- The bug only manifests if the two node editors are on different monitors
- Closing the secondary window or moving it back into the main windows monitor cancels the effect.
- Only the main window ever seems affected, the secondary window remains working as intended in any of the monitors
- Setting both monitors to have scaling at 100% seems to avoid the issue
See the following screen capture, it is not obvious in the video, but the recording was captured midway between the two system monitors, the blue background is Window desktop wallpaper on the second monitor and represents the boundary between two screens, while Blender's main window was full screen on the main monitor.
This is probably related to T85628, I have the same issue if I try to open a window in the secondary monitor, throwing an "Unsupported graphics card, need OpenGL 3.3 error".