You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When stretching the screen in the settings (using the parameter display/window/stretch/shrink), sub-pixel drawing behaviors are no longer drawn with stretched pixels.
Instead, they are drawn as if the pixel stretch were set to 1, and the camera were zoomed in.
The images below illustrate a scene with a drawn line and a scaled-down sprite, using a screen stretch of 4.
Behavior in Godot 3.3.2.stable
Behavior in Godot 3.4.stable
More detailed system information
Version: Godot Engine v3.4.stable.official.206ba70f4
OpenGL ES 3.0 Renderer: GeForce GTX 1660 SUPER/PCIe/SSE2
OpenGL ES Batching: ON
OS: Windows 10 Home 21H1, 19043.1288
Processor: Intel Core i7-6700 @ 3.40 GHz
Graphics card: NVIDIA GeForce GTX 1660 SUPER
Graphics card driver version: 27.21.14.5671
Steps to reproduce
In a new scene, place a downscaled sprite / instance of draw_line / ...
Increase the screen stretch in the settings or with get_tree().set_screen_stretch(...).
Run the scene. Note the visual change between 3.3 and 3.4.
The text was updated successfully, but these errors were encountered:
sjerpsthomas
changed the title
Incorrect sub-pixel drawing behavior with display/window/stretch/shrink
[3.4] Incorrect sub-pixel drawing behavior with display/window/stretch/shrink
Nov 8, 2021
sjerpsthomas
changed the title
[3.4] Incorrect sub-pixel drawing behavior with display/window/stretch/shrink
[3.4] Incorrect sub-pixel drawing behavior using display/window/stretch/shrink setting
Nov 8, 2021
Following the merge of #52137, this is now expected when not using the viewport stretch mode. If you want a pixel art appearance, set the stretch mode to viewport in the project settings.
@Calinou Alright, I've set the stretch mode to viewport now, and the scene now has a pixel art appearance, as before.
However, changing the screen stretch through get_tree().set_screen_stretch(...) now causes the game to stop rendering.
The scene still processes and takes input, but the graphics do not refresh, and when resizing the window, it turns black.
Godot version
3.4.stable
System information
Windows 10, GLES3, GeForce GTX 1660 SUPER
Issue description
When stretching the screen in the settings (using the parameter
display/window/stretch/shrink
), sub-pixel drawing behaviors are no longer drawn with stretched pixels.Instead, they are drawn as if the pixel stretch were set to 1, and the camera were zoomed in.
The images below illustrate a scene with a drawn line and a scaled-down sprite, using a screen stretch of 4.
Behavior in Godot 3.3.2.stable
Behavior in Godot 3.4.stable
More detailed system information
Version: Godot Engine v3.4.stable.official.206ba70f4
OpenGL ES 3.0 Renderer: GeForce GTX 1660 SUPER/PCIe/SSE2
OpenGL ES Batching: ON
OS: Windows 10 Home 21H1, 19043.1288
Processor: Intel Core i7-6700 @ 3.40 GHz
Graphics card: NVIDIA GeForce GTX 1660 SUPER
Graphics card driver version: 27.21.14.5671
Steps to reproduce
get_tree().set_screen_stretch(...)
.Minimal reproduction project
ScreenStretchMinimalReproducableProject.zip
The text was updated successfully, but these errors were encountered: