Skip to content

Screen Reading Textures ignore "nearest" filtering flag in compatibility render. #106787

@sysl-dev

Description

@sysl-dev

Tested versions

Godot v4.4.stable

System information

Godot v4.4.stable - Windows 11 (build 26100) - Multi-window, 2 monitors - Vulkan (Forward+) - integrated Intel(R) Iris(R) Xe Graphics (Intel Corporation; 32.0.101.5768) - 13th Gen Intel(R) Core(TM) i7-1355U (12 threads)

Issue description

shader_type canvas_item;
uniform sampler2D screen_texture: hint_screen_texture, filter_nearest;

void fragment() {
	COLOR = texture(screen_texture, SCREEN_UV + cos(TIME)/SCREEN_UV.y/20.0);
}

The following shader behaves differently between compatibility and forward+

Image
Compatibility: Color blending, screen texture not nearest filter.

Image
Forward+: No Color blending, screen texture is nearest filter.

Steps to reproduce

Use a screen reading texture on compatibility renderer, have the texture distort.

Minimal reproduction project (MRP)

example.zip

I used zoomed in pixel art for the example, at 1x scale pixel art is much worse.

Image

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    For team assessment

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions