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

Display issues on 4k screen when using fullscreen mode at lower than native resolution #14446

Closed
zejji opened this issue Dec 9, 2017 · 5 comments
Milestone

Comments

@zejji
Copy link

zejji commented Dec 9, 2017

Operating system or device, Godot version, GPU Model and driver (if graphics related):

OS: Windows 10 64-bit
Device: Dell XPS 15 9560 UHD (3840 x 2160 px)
Godot version: Custom build of master as of 08 Dec 2017 (commit 8c78ccb)
GPU: Nvidia GTX 1050

Issue description:

When I test my game, I tend to use the following settings in Project Settings > Display:

  • Width: 1920 (this represents half the horizontal resolution of the 4k screen)
  • Height: 1080
  • Resizable: No
  • Borderless: No
  • Fullscreen: Yes
  • Allow hidpi: No
  • Vsync: Yes

This leads to a number of issues which are not present when using windowed mode:

  • the framerate drops to a third of the framerate for the same resolution in windowed mode (see more details here)
  • the camera view looks zoomed in, as if Godot is rendering to the full 3840 x 2160 resolution but the viewport is only showing the middle section of the buffer.

Please see discussion on this thread at for more context.

Steps to reproduce:

Use the Display settings listed above for a 3d project on a 4k monitor.

Link to minimal example project:

n/a

@Calinou
Copy link
Member

Calinou commented Dec 9, 2017

Note that:

  • Godot currently does not support non-native fullscreen resolutions on any platforms. This should eventually be implemented, as performance will be higher than by just using undersampled native fullscreen (which should still be supported) – alt-tabbing will however be slower, as non-native fullscreen resolutions require modesetting every time the user alt-tabs from/to the game (which takes several seconds).
  • Fullscreen on hiDPI displays is currently broken on Godot, at least on Windows. This needs to be tested on Linux and macOS as well.

As for the second issue, try disabling the Windows-provided upscaling on Godot. Right-click the Godot executable, then click Properties, go to the Compatibility tab, then override DPI scaling with the Application value.

@zejji
Copy link
Author

zejji commented Dec 9, 2017

@Calinou

Many thanks for the information. I've played around a bit and the only combination of settings which gives the correct results for me (i.e. correctly displaying fullscreen at 1920 x 1080) is as follows:

  • disable Windows-provided upscaling as described in your post above; and
  • in Project Settings > Display, set:
    • Allow Hidpi: No
    • Stretch - mode: Viewport

The framerate I get is ~20 fps, so slightly worse than windowed mode at the same resolution (i.e. ~30 fps).

@reduz
Copy link
Member

reduz commented Dec 26, 2017

Godot currently does not support non-native fullscreen resolutions on any platforms. This should eventually be implemented, as performance will be higher than by just using undersampled native fullscreen (which should still be supported) – alt-tabbing will however be slower, as non-native fullscreen resolutions require modesetting every time the user alt-tabs from/to the game (which takes several seconds).

It sure does support it, the Viewport API allows for setting this manually as you best see it fit.

Fullscreen on hiDPI displays is currently broken on Godot, at least on Windows. This needs to be tested on Linux and macOS as well.

@Calinou Link to issue would be nice.

@reduz
Copy link
Member

reduz commented Jan 18, 2018

I dont have a 4k monitor to reproduce, may have one soon, for now kicking to 3.1

@reduz reduz modified the milestones: 3.0, 3.1 Jan 18, 2018
@reduz
Copy link
Member

reduz commented Sep 6, 2018

This was fixed a few weeks ago, closing.

@reduz reduz closed this as completed Sep 6, 2018
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

4 participants