| Summary: | Renderer viewport doesn't clip when opengles renderer uses glDrawTexfOES | ||
|---|---|---|---|
| Product: | SDL | Reporter: | Simon Hug <chli.hug> |
| Component: | render | Assignee: | Sam Lantinga <slouken> |
| Status: | RESOLVED FIXED | QA Contact: | Sam Lantinga <slouken> |
| Severity: | normal | ||
| Priority: | P2 | ||
| Version: | HG 2.0 | ||
| Hardware: | All | ||
| OS: | All | ||
| Attachments: | Test case for viewport clipping with the opengles renderer. | ||
Mentioning bug 3373. It's not directly related, but be aware that the Raspberry Pi may do something unexpected with glDrawTexfOES. I opted to remove that code path. Thanks! https://hg.libsdl.org/SDL/rev/8e4a030053c2 |
Created attachment 2498 [details] Test case for viewport clipping with the opengles renderer. The description of the renderer viewport implies that everything outside the viewport rectangle gets clipped and all renderers implement it that way. There's an exception with the opengles renderer when it uses glDrawTexfOES. This operation does not use the vertex stage of the OpenGL pipeline where the vertices would get clipped to the view frustum and directly produces fragments. Textures that overlap the viewport rectangle and get drawn with glDrawTexfOES do not get properly clipped. Attached is a test case that shows this issue. The viewport is marked with a white rectangle and the overlapping textures with a yellow rectangle.