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

Scaled texture draws with filtering produce wrapping artifacts. #894

Closed
SDLBugzilla opened this issue Feb 10, 2021 · 0 comments
Closed

Scaled texture draws with filtering produce wrapping artifacts. #894

SDLBugzilla opened this issue Feb 10, 2021 · 0 comments

Comments

@SDLBugzilla
Copy link
Collaborator

This bug report was migrated from our old Bugzilla tracker.

These attachments are available in the static archive:

Reported in version: HG 2.0
Reported for operating system, platform: Windows 8, x86

Comments on the original bug report:

On 2013-05-30 08:50:28 +0000, Yuri K. Schlesner wrote:

Created attachment 1157
Testcase

When using texture filtering, there are filtering artifacts visible on the edges of scaled textures, where the texture filtering pulls in texels from the other side of the texture. Using clamping texture modes wouldn't completely fix this since source rectangles don't need to cover the whole texture. (See screenshot attached in next post.)

The opengl driver uses clamping on textures and so avoid this at least in the cases where the source rect is the whole texture. The direct3d driver does not and so has problems in every case. I'm not sure if it can actually completely be fixed, but at least enabling clamping for direct3d would be one step in the right direction.

Attached is a testcase with a test pattern that illustrates the issue.

On 2013-05-30 08:51:41 +0000, Yuri K. Schlesner wrote:

Created attachment 1158
Problem screenshot

(Note: the test program in the previous comment depends on bug # 1874 to work properly.)

On 2013-05-31 00:00:02 +0000, Sam Lantinga wrote:

If everybody is okay with enabling clamping on D3D, I think that's a good fix.
It seems reasonable to have behavior parity between OpenGL and D3D as long as it doesn't cause other issues.

Do you want to submit a patch?

On 2013-05-31 22:35:53 +0000, Yuri K. Schlesner wrote:

Created attachment 1164
Proposed patch

I'd like to ask you to verify that I did this state setting in the correct places. I'm not 100% on if there was a shared initialization function that I missed where I could be doing this instead.

On 2015-02-19 05:22:16 +0000, Ryan C. Gordon wrote:

Marking a large number of bugs with the "triage-2.0.4" keyword at once. Sorry if you got a lot of email from this. This is to help me sort through some bugs in regards to a 2.0.4 release. We may or may not fix this bug for 2.0.4, though!

On 2017-11-15 21:12:08 +0000, Lothar Serra Mari wrote:

Hi folks,

I'm a contributor to the ScummVM project [http://scummvm.org]. We use SDL2 for some of the platforms we support, mainly the Windows, Linux and macOS ports.

While testing, I noticed that this bug apparently still exists and that the proposed patch by Yuri Schlesner was not merged into the code base.

Any chance to get this merged?

Best regards
rootfather

On 2017-12-08 18:27:47 +0000, C Snover wrote:

I understand this is not a critical issue, and, it has had a patch available which seems to fix the problem for 4.5 years, and the patch is only four lines of code. Could it please be reviewed & landed? Thank you.

On 2017-12-08 19:10:59 +0000, Sam Lantinga wrote:

Fixed, thanks!
https://hg.libsdl.org/SDL/rev/0c134b939fd9

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

No branches or pull requests

1 participant