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

Improve support for mipmaps and related headless fixes #9633

Merged
merged 9 commits into from
Apr 23, 2017

Conversation

unknownbrackets
Copy link
Collaborator

This improves mipmap handling in the typical halving levels case:

CONST: Works in GLES3/desktop GL and D3D11. Approximated in D3D9.
AUTO: Works in desktop GL, D3D11, and D3D9. Could maybe be supported in GLES3 via shader.
SLOPE: Added reporting, but doesn't work properly anywhere.

Vulkan is untouched because it can't be tested in headless (no readback yet.)

Note that D3D9 calls the base mip level "max" because it's the "largest" level. It's an integer, so CONST doesn't even support blending properly.

Of course, CONST is probably most often used when mipmaps do NOT halve in size, but might as well support it for the easier cases.

-[Unknown]

@hrydgard
Copy link
Owner

Nice. Only issue I see is that GL_TEXTURE_MAX_LOD/MIN_LOD are applied even where not supported (ES2), and given what we know about the state of GLES2 drivers, that might not be a good thing, even if they should technically ignore these...

@unknownbrackets
Copy link
Collaborator Author

Ah right, yes. Updated.

-[Unknown]

@hrydgard hrydgard merged commit 1a58629 into hrydgard:master Apr 23, 2017
@unknownbrackets unknownbrackets deleted the mipmaps branch April 23, 2017 19:22
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

Successfully merging this pull request may close these issues.

2 participants