Pulling the EDID from this display shows these values:
Horizontal Display Size: 1193
Vertical Display Size: 336
I think the driver should be able to use these to calculate the DPI correctly?
see also
EDID issue which blamed the EDID info
If it’s a monitor issue it would be nice to have extra evidence because Samsung support is Phone/Chat only T_T
Attaching one file at a time because ‘new users can only put one link in a post’ and ‘Please wait 2 minutes to reply’…
xorg.log (3.2 KB)
EDID: (because attaching files is too painful)
$ cat ~/Documents/edid.txt
00 ff ff ff ff ff ff 00 4c 2d 53 70 4d 38 58 43 ff ff 01 04 b5 77 22 78 3b c7 25 b1 4b 46 a8 26 0e 50 54 bf ef 80 71 4f 81 00 81 c0 81 80 a9 c0 b3 00 95 00 d1 c0 74 d6 00 a0 f0 38 40 40 30 20 3a 00 a9 50 41 00 00 1a 00 00 00 fd 00 3c 78 b7 b7 61 01 0a 20 20 20 20 20 20 00 00 00 fc 00 4c 43 34 39 47 39 35 54 0a 20 20 20 20 00 00 00 ff 00 48 34 5a 52 36 30 32 38 31 30 0a 20 20 02 1b 02 03 2d f0 44 10 5a 3f 5c 23 09 07 07 83 01 00 00 e3 05 c0 00 6d 1a 00 00 02 0f 3c 78 00 04 8b 12 73 17 e3 06 05 01 e5 01 8b 84 90 01 56 5e 00 a0 a0 a0 29 50 30 20 35 00 a9 50 41 00 00 1a 58 4d 00 b8 a1 38 14 40 f8 2c 45 00 a9 50 41 00 00 1e 1a 68 00 a0 f0 38 1f 40 30 20 3a 00 a9 50 41 00 00 1a 6f c2 00 a0 a0 a0 55 50 30 20 35 00 a9 50 41 00 00 1a 00 00 00 00 00 00 00 00 00 00 fc 70 12 79 00 00 03 01 28 2f 79 01 88 ff 13 9f 00 2f 80 1f 00 9f 05 53 00 02 00 09 00 33 b7 00 08 ff 13 9f 00 2f 80 1f 00 9f 05 28 00 02 00 09 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4f 90
The lack of width/height in mm in XRandR is causing this issue:
opened 09:29PM - 20 May 22 UTC
bug
platform:linuxbsd
topic:porting
### Godot version
4.0-alpha8, 3.4.4-stable, 3.3.4-stable
### System inform… ation
Linux 5.17.5-76051705-generic, Pop!_OS 22.04 Renderer: NVIDIA GeForce GTX 1070 with Max-Q Design/PCIe/SSE2 510.68.02
### Issue description
When you open the editor/game it incorrectly detects a highdpi display and doubles the display scale (auto-detected display scale is 200% but should be 100%)
You can still manually set the display scale to 100% in the Editor Settings -> Display Scale.
When you call `DisplayServer.screen_get_dpi()` the DPI is listed as 83312 rather than anything close to the actual DPI of my display of 109.. https://www.samsung.com/us/computing/monitors/gaming/49--odyssey-g9-gaming-monitor-lc49g95tssnxza/
### Steps to reproduce
Run the included reproduction on a 5120x1440 DQHD display with 109 dpi.
### Minimal reproduction project
[godot4-dpi-screen-scale-repro.zip](https://github.com/godotengine/godot/files/8744560/godot4-dpi-screen-scale-repro.zip)
You may have better luck getting help from the Geforce users on the consumer forums:
https://www.nvidia.com/en-us/geforce/forums/discover/
I expect someone must have the same monitor as you and can share notes - the EDID communication and interpretation between Linux and Windows is likely to be the same.
This issue doesn’t occur in windows as there is no xrandr to report invalid data to the game engine… I get an (incorrect) value of 96 dpi from the GetDpiForMonitor api in windows… it’s not correct but at least it gives a sane value instead of ‘1mm’ for the display size.
$ xrandr | grep " connected"
eDP-1 connected (normal left inverted right x axis y axis)
DP-1-0 connected primary 5120x1440+0+0 (normal left inverted right x axis y axis) 1mm x 1mm