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

glBlitFramebuffer fails if default framebuffer doesn't use STENCIL_INDEX8 #1083

Open
ids1024 opened this issue Jul 19, 2023 · 2 comments
Open

Comments

@ids1024
Copy link
Member

ids1024 commented Jul 19, 2023

This seems to be an issue running with ANGLE: #1082.

Changing STENCIL_INDEX8 to DEPTH24_STENCIL8 makes it run without errors and render correctly.

Should Smithay somehow detect the format to use here? Or avoid blitting depth to the default framebuffer?

@Drakulix
Copy link
Member

STENCIL_INDEX8 is in general not as widely supported as DEPTH24_STENCIL8, but might be more performant and safes us from accidentally doing expensive DEPTH-buffer operations.
But I guess we could easily fallback, since all we care for is having an 8-bit stencil buffer. But we would have to make sure, that we either never use the depth-test were we don't need to (hard) or never blit the depth buffer (easier).

@ids1024
Copy link
Member Author

ids1024 commented Jul 19, 2023

In this case, both are supported, but you can't blit a STENCIL_INDEX8 to a DEPTH24_STENCIL8. Maybe that could be tested by doing a test glBlitFrameBuffer and seeing if it results in a GL error... I don't see a way to detect what the default framebuffer is using.

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

2 participants