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

Android: Make font rendering work even absent support for R4G4B4A4 textures #17022

Merged
merged 1 commit into from
Feb 28, 2023

Conversation

hrydgard
Copy link
Owner

@hrydgard hrydgard commented Feb 27, 2023

This shouldn't normally happen as conforming drivers are required to support that texture format, but the software driver that we accidentally choose on Poco C40 (see issue #16391) doesn't.

That we erroneously choose to use that driver will be fixed separately. This fix on its own at least lets the user comfortably navigate to settings and switch to OpenGL. Plus, we might always want to use the new R8 texture path on Android to save a little bit of memory. (We did have that R8 path before, but it didn't work correctly).

I hope these devices with only software Vulkan drivers stay rare. Weird configuration.

…xtures.

This shouldn't normally happen as conforming drivers are required to
support that texture format, but the software driver that we
accidentally choose on Poco C40 (see issue #16391) doesn't.

That we choose that driver will be fixed separately. This fix on its own
at least lets the user comfortably navigate to settings and switch to
OpenGL.
Copy link
Collaborator

@unknownbrackets unknownbrackets left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we just always used 4444, probably to save memory I guess?
871260f#diff-03f7dbea1008f668c63f7d6012fd3359c8749044cfaf0e275af78e16b03d8d78R118

-[Unknown]

@unknownbrackets unknownbrackets merged commit 49deba7 into master Feb 28, 2023
@unknownbrackets unknownbrackets deleted the poco-c40-text-fix branch February 28, 2023 03:42
@ghost
Copy link

ghost commented Feb 28, 2023

You mean #16931 and not #16391.

@unknownbrackets
Copy link
Collaborator

Oops, thanks for catching.

-[Unknown]

@hrydgard
Copy link
Owner Author

Yes but R8 saves more memory than 4444.

@unknownbrackets
Copy link
Collaborator

That's true, using GL_LUMINANCE on GLES2 and GL_RED on GLES3 would be more optimal. But in 2017 I think we only had 32 and 16 bit textures, practically...

-[Unknown]

@hrydgard
Copy link
Owner Author

Yeah, true - can't swizzle on those either so would need special shaders. On Vulkan we could easily switch though. Unless we want to support color emoji

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

Successfully merging this pull request may close these issues.

2 participants