Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

macOS - Editor text renders incorrectly when a high-DPI display is connected #90201

Closed
samuelfine opened this issue Apr 4, 2024 · 5 comments
Closed

Comments

@samuelfine
Copy link

Tested versions

  • Reproducible in v4.3.dev5.official [89f70e9]
  • NOT reproducible in v4.1.2.stable.official [399c9dc]

System information

macOS Sonoma 14.3.1 (23D60), iPadOS 17.3.1

Issue description

I'm running Godot v4.3.dev5.official [89f70e9] on an M1 Mac Mini with two monitors attached (standard DPI), and the Godot Editor displays as expected. However, when I connect my iPad Pro with a high DPI display to "extend" my desktop, then relaunch Godot (on one of the monitors with a standard DPI display, not the iPad), all Editor text displays aliased like there is some sort of scaling occurring.

Editor (Godot 4.3.dev5) on a standard DPI display without an iPad connected:
editor-no-ipad

Editor (Godot 4.1.2) on the same standard DPI display with an iPad connected:
editor-ipad

Steps to reproduce

  1. Connect a high DPI (Retina) iPad to your computer running macOS.
  2. Open System Settings, go to Displays, and click the + icon dropdown to the right side.
  3. Select your iPad under the "Mirror or extend to" list.
  4. Launch Godot, observe text rendering issues

Minimal reproduction project (MRP)

Any project. Tested with a brand new project.

@ajreckof
Copy link
Member

ajreckof commented Apr 4, 2024

related to #89019

@lostminds
Copy link

For reference I've been using the 4.3 dev builds on a M2 Mac with two hiDPI monitors (but no standardDPI monitors) extensively with no issues. So it might be that the issue is related to the mix of monitors with different display-scales?

In this case (and maybe #89019) it looks like the problems are related to connecting displays with a different DPI scaling compared to the main display. So perhaps it could be that some rendering/backing code is getting the resolution scale of the main screen, while some other rendering/window code is getting the resolution scale of the screen the editor window is on (or for some reason the wrong screen)? A way to test it could be to see if makes a difference what monitor you place the editor window on, and test trying to set both monitors to use the same resolution scale or switch which one is the main display.

@caimantilla
Copy link
Contributor

I can confirm this behavior. Godot will always be configured for the high-DPI display, with no way to force proper display on the low-DPI one.

@Calinou
Copy link
Member

Calinou commented Apr 29, 2024

Thanks for the report! Consolidating in #87015, as this is due to the same cause.

This likely needs #86022 to be addressed. Can anyone here test that PR locally and see if it works on their end?

@TinyMatt
Copy link

TinyMatt commented May 3, 2024

I'm happy to report that I've just build and run the mentioned PR ( #86022 ) and it seems to be working just fine on external low-DPI monitor

I've tested it with M1 mac and Mobile renderer

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants