| Name |
| |
| MESA_framebuffer_flip_y |
| |
| Name Strings |
| |
| GL_MESA_framebuffer_flip_y |
| |
| Contact |
| |
| Fritz Koenig <frkoenig@google.com> |
| |
| Contributors |
| |
| Fritz Koenig, Google |
| Kristian Høgsberg, Google |
| Chad Versace, Google |
| Heinrich Fink, DAQRI |
| |
| Status |
| |
| Proposal |
| |
| Version |
| |
| Version 3, August, 2019 |
| |
| Number |
| |
| OpenGL Extension #540 |
| OpenGL ES Extension #302 |
| |
| Dependencies |
| |
| Requires OpenGL ES 3.0, OpenGL 4.3, or ARB_framebuffer_no_attachments. |
| |
| Overview |
| |
| This extension defines a new framebuffer parameter, |
| GL_FRAMEBUFFER_FLIP_Y_MESA, that changes the behavior of the reads and |
| writes to the framebuffer attachment points. When GL_FRAMEBUFFER_FLIP_Y_MESA |
| is GL_TRUE, render commands and pixel transfer operations access the |
| backing store of each attachment point with an y-inverted coordinate |
| system. This y-inversion is relative to the coordinate system set when |
| GL_FRAMEBUFFER_FLIP_Y_MESA is GL_FALSE. |
| |
| Access through TexSubImage2D and similar calls will notice the effect of |
| the flip when they are not attached to framebuffer objects because |
| GL_FRAMEBUFFER_FLIP_Y_MESA is associated with the framebuffer object and |
| not the attachment points. |
| |
| IP Status |
| |
| None |
| |
| Issues |
| |
| None |
| |
| New Procedures and Functions |
| |
| OpenGL ES must provide the following functions: |
| |
| void FramebufferParameteriMESA(enum target, enum pname, int param); |
| void GetFramebufferParameterivMESA(enum target, enum pname, int *params); |
| |
| New Types |
| |
| None |
| |
| New Tokens |
| |
| Accepted by the <pname> argument of FramebufferParameteriMESA and |
| GetFramebufferParameterivMESA: |
| |
| GL_FRAMEBUFFER_FLIP_Y_MESA 0x8BBB |
| |
| Interactions with OpenGL 4.3, OpenGL ES 3.1, ARB_framebuffer_no_attachments |
| and any other versions and extensions that provide the entry points |
| FramebufferParameteri and GetFramebufferParameteriv |
| |
| Token GL_FRAMEBUFFER_FLIP_Y_MESA is accepted as the <pname> argument of |
| FramebufferParameteri and GetFramebufferParameteriv. |
| |
| Errors |
| |
| An INVALID_OPERATION error is generated by GetFramebufferParameteriv or |
| GetFramebufferParameterivMESA if the default framebuffer is bound |
| to <target> and <pname> is GL_FRAMEBUFFER_FLIP_Y_MESA. |
| |
| |
| |
| |
| |
| Revision History |
| |
| Version 3, August, 2019 |
| Allow OpenGL ES 3.0 to implement by adding functions |
| FramebufferParameteriMESA and GetFramebufferParameterivMESA which were |
| previously only available in OpenGL ES 3.1. |
| |
| Version 2, June, 2019 |
| Enable extension for OpenGL 4.3 and beyond |
| |
| Version 1, June, 2018 |
| Initial draft (Fritz Koenig) |