• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Name
2
3    MESA_framebuffer_flip_y
4
5Name Strings
6
7    GL_MESA_framebuffer_flip_y
8
9Contact
10
11    Fritz Koenig <frkoenig@google.com>
12
13Contributors
14
15    Fritz Koenig, Google
16    Kristian Høgsberg, Google
17    Chad Versace, Google
18    Heinrich Fink, DAQRI
19
20Status
21
22    Proposal
23
24Version
25
26    Version 3, August, 2019
27
28Number
29
30    OpenGL Extension #540
31    OpenGL ES Extension #302
32
33Dependencies
34
35    Requires OpenGL ES 3.0, OpenGL 4.3, or ARB_framebuffer_no_attachments.
36
37Overview
38
39    This extension defines a new framebuffer parameter,
40    GL_FRAMEBUFFER_FLIP_Y_MESA, that changes the behavior of the reads and
41    writes to the framebuffer attachment points. When GL_FRAMEBUFFER_FLIP_Y_MESA
42    is GL_TRUE, render commands and pixel transfer operations access the
43    backing store of each attachment point with an y-inverted coordinate
44    system. This y-inversion is relative to the coordinate system set when
45    GL_FRAMEBUFFER_FLIP_Y_MESA is GL_FALSE.
46
47    Access through TexSubImage2D and similar calls will notice the effect of
48    the flip when they are not attached to framebuffer objects because
49    GL_FRAMEBUFFER_FLIP_Y_MESA is associated with the framebuffer object and
50    not the attachment points.
51
52IP Status
53
54    None
55
56Issues
57
58    None
59
60New Procedures and Functions
61
62    OpenGL ES must provide the following functions:
63
64    void FramebufferParameteriMESA(enum target, enum pname, int param);
65    void GetFramebufferParameterivMESA(enum target, enum pname, int *params);
66
67New Types
68
69    None
70
71New Tokens
72
73    Accepted by the <pname> argument of FramebufferParameteriMESA and
74    GetFramebufferParameterivMESA:
75
76        GL_FRAMEBUFFER_FLIP_Y_MESA                      0x8BBB
77
78Interactions with OpenGL 4.3, OpenGL ES 3.1, ARB_framebuffer_no_attachments
79and any other versions and extensions that provide the entry points
80FramebufferParameteri and GetFramebufferParameteriv
81
82        Token GL_FRAMEBUFFER_FLIP_Y_MESA is accepted as the <pname> argument of
83        FramebufferParameteri and GetFramebufferParameteriv.
84
85Errors
86
87    An INVALID_OPERATION error is generated by GetFramebufferParameteriv or
88    GetFramebufferParameterivMESA if the default framebuffer is bound
89    to <target> and <pname> is GL_FRAMEBUFFER_FLIP_Y_MESA.
90
91
92
93
94
95Revision History
96
97    Version 3, August, 2019
98        Allow OpenGL ES 3.0 to implement by adding functions
99        FramebufferParameteriMESA and GetFramebufferParameterivMESA which were
100        previously only available in OpenGL ES 3.1.
101
102    Version 2, June, 2019
103        Enable extension for OpenGL 4.3 and beyond
104
105    Version 1, June, 2018
106        Initial draft (Fritz Koenig)
107