]> git.tdb.fi Git - libs/gl.git/blob - gl.fixes.xml
Initialize View::camera to null
[libs/gl.git] / gl.fixes.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <registry>
3     <!-- The gl.xml file does not contain enough information to make all the
4     connections between extension and core functions correctly.  This file
5     attempts to rectify these problems. -->
6
7     <commands>
8         <!-- The EXT versions allow user-generated names; core versions don't.
9         Since we use GL-generated names, it's safe to alias them. -->
10         <command>
11             <proto><name>glBindFramebufferEXT</name></proto>
12             <alias name="glBindFramebuffer" />
13         </command>
14         <command>
15             <proto><name>glBindRenderbufferEXT</name></proto>
16             <alias name="glBindRenderbuffer" />
17         </command>
18
19         <!-- ARB_shader_objects function names got changed when promoted to
20         core. -->
21         <command>
22             <proto><name>glDeleteObjectARB</name></proto>
23             <alias name="glDeleteShader" />
24             <alias name="glDeleteProgram" />
25         </command>
26         <command>
27             <proto><name>glGetInfoLogARB</name></proto>
28             <alias name="glGetShaderInfoLog" />
29             <alias name="glGetProgramInfoLog" />
30         </command>
31         <command>
32             <proto><name>glGetObjectParameterivARB</name></proto>
33             <alias name="glGetShaderiv" />
34             <alias name="glGetProgramiv" />
35         </command>
36
37         <!-- This alias is missing because the ARB version returns GLhandleARB,
38         which is typedef'd as a pointer on OS X.  It could cause problems on
39         64-bit macs with shaders only available through the extension. -->
40         <command>
41             <proto><name>glGetAttachedObjectsARB</name></proto>
42             <alias name="glGetAttachedShaders" />
43         </command>
44     </commands>
45
46     <enums>
47         <!-- These error codes weren't promoted to core with the rest of
48         EXT_framebuffer_object.  There's no harm in taking them in since
49         they're not passed to GL at any point. -->
50         <enum value="0x8CD9" name="GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS"/>
51         <enum value="0x8CDA" name="GL_FRAMEBUFFER_INCOMPLETE_FORMATS"/>
52     </enums>
53
54     <feature api="gl" name="MSPGL">
55         <require>
56             <enum name="GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS" />
57             <enum name="GL_FRAMEBUFFER_INCOMPLETE_FORMATS" />
58         </require>
59     </feature>
60
61     <feature api="gles2" name="MSPGLES">
62         <require>
63             <enum name="GL_FRAMEBUFFER_INCOMPLETE_FORMATS" />
64         </require>
65     </feature>
66
67     <feature name="MSPGL_REMOVE">
68         <remove>
69             <!-- These have no counterparts in the core version of
70             ARB_shader_objects. -->
71             <command name="glGetHandleARB" />
72             <command name="glGetObjectParameterfvARB" />
73             <enum name="GL_PROGRAM_OBJECT_ARB" />
74             <enum name="GL_SHADER_OBJECT_ARB" />
75             <enum name="GL_OBJECT_TYPE_ARB" />
76
77             <!-- Ignore this, as it comes from ARB_vertex_program and I'm not
78             sure if it works with ARB_shader_objects. -->
79             <command name="glIsProgramARB" />
80
81             <!-- This was never promoted from ARB_geometry_shader4. -->
82             <command name="glFramebufferTextureFaceARB" />
83         </remove>
84     </feature>
85
86     <extensions>
87         <!-- Some functions mentioned in ARB_uniform_buffer_object
88         specification are missing from gl.xml. -->
89         <extension name="GL_ARB_uniform_buffer_object" supported="gl|glcore">
90             <require>
91                 <command name="glBindBufferRange" />
92                 <command name="glBindBufferBase" />
93             </require>
94         </extension>
95
96         <!-- Put GL_RED here for the benefit of OpenGL ES. -->
97         <extension name="GL_ARB_texture_rg" supported="gl|glcore">
98             <require>
99                 <enum name="GL_RED" />
100             </require>
101         </extension>
102
103         <extension name="GL_MSP_legacy_features" supported="gl">
104             <require>
105                 <command name="glEnableClientState" />
106                 <command name="glDisableClientState" />
107
108                 <enum name="GL_QUADS" />
109                 <enum name="GL_QUAD_STRIP" />
110                 <enum name="GL_LUMINANCE8" />
111                 <enum name="GL_LUMINANCE8_ALPHA8" />
112
113                 <enum name="GL_AMBIENT" />
114                 <enum name="GL_DIFFUSE" />
115                 <enum name="GL_SPECULAR" />
116                 <enum name="GL_EMISSION" />
117                 <enum name="GL_SHININESS" />
118                 <enum name="GL_LIGHTING" />
119                 <enum name="GL_LIGHT_MODEL_AMBIENT" />
120                 <enum name="GL_LIGHT0" />
121                 <enum name="GL_MAX_LIGHTS" />
122                 <enum name="GL_POSITION" />
123                 <enum name="GL_SPOT_DIRECTION" />
124                 <enum name="GL_SPOT_EXPONENT" />
125                 <enum name="GL_SPOT_CUTOFF" />
126                 <enum name="GL_CONSTANT_ATTENUATION" />
127                 <enum name="GL_LINEAR_ATTENUATION" />
128                 <enum name="GL_QUADRATIC_ATTENUATION" />
129                 <command name="glLightModelfv" />
130                 <command name="glLightf" />
131                 <command name="glLightfv" />
132                 <command name="glMaterialf" />
133                 <command name="glMaterialfv" />
134
135                 <enum name="GL_FOG" />
136                 <enum name="GL_FOG_MODE" />
137                 <enum name="GL_FOG_DENSITY" />
138                 <enum name="GL_FOG_COLOR" />
139                 <enum name="GL_EXP" />
140                 <command name="glFogi" />
141                 <command name="glFogf" />
142                 <command name="glFogfv" />
143
144                 <enum name="GL_MODELVIEW" />
145                 <enum name="GL_PROJECTION" />
146                 <command name="glMatrixMode" />
147                 <command name="glLoadMatrixf" />
148
149                 <!-- Can't reuse EXT_vertex_array for these, as the functions
150                 defined there have different signatures. -->
151                 <enum name="GL_VERTEX_ARRAY" />
152                 <enum name="GL_NORMAL_ARRAY" />
153                 <enum name="GL_COLOR_ARRAY" />
154                 <enum name="GL_TEXTURE_COORD_ARRAY" />
155                 <command name="glVertexPointer" />
156                 <command name="glNormalPointer" />
157                 <command name="glColorPointer" />
158                 <command name="glTexCoordPointer" />
159
160                 <command name="glClipPlane" />
161             </require>
162         </extension>
163
164         <!-- OpenGL ES does not have glDrawBuffer. -->
165         <extension name="GL_MSP_draw_buffer" supported="gl">
166             <require>
167                 <command name="glDrawBuffer" />
168                 <command name="glReadBuffer" />
169             </require>
170         </extension>
171
172         <!-- OpenGL ES does not have harwdare clipping. -->
173         <extension name="GL_MSP_clipping" supported="gl">
174             <require>
175                 <enum name="GL_MAX_CLIP_PLANES" />
176                 <enum name="GL_CLIP_PLANE0" />
177                 <enum name="GL_CLIP_PLANE1" />
178                 <enum name="GL_CLIP_PLANE2" />
179                 <enum name="GL_CLIP_PLANE3" />
180                 <enum name="GL_CLIP_PLANE4" />
181                 <enum name="GL_CLIP_PLANE5" />
182             </require>
183         </extension>
184
185         <!-- Stereo rendering is not supported on OpenGL ES, but I'm not
186         certain enough of its uselessness to remove the constants outright. -->
187         <extension name="GL_MSP_stereo_rendering" supported="gl">
188             <require>
189                 <enum name="GL_FRONT_LEFT" />
190                 <enum name="GL_FRONT_RIGHT" />
191                 <enum name="GL_BACK_LEFT" />
192                 <enum name="GL_BACK_RIGHT" />
193                 <enum name="GL_LEFT" />
194                 <enum name="GL_RIGHT" />
195             </require>
196         </extension>
197
198         <!-- Sized internal formats were introduced in OpenGL ES 3.0, but are
199         not available as an extension. -->
200         <extension name="GL_MSP_sized_internal_formats" supported="gl|gles2">
201             <require>
202                 <enum name="GL_RGB8" />
203                 <enum name="GL_RGBA8" />
204             </require>
205         </extension>
206
207         <!-- 1D textures are not available in OpenGL ES, but could conceivably
208         be added at a later date. -->
209         <extension name="GL_MSP_texture1D" supported="gl">
210             <require>
211                 <command name="glTexImage1D" />
212                 <enum name="GL_TEXTURE_1D" />
213             </require>
214         </extension>
215
216         <!-- The core version of primitive restart has different semantics
217         from the NV extension but is not available as a backport extension. -->
218         <extension name="GL_MSP_primitive_restart" supported="gl">
219             <require>
220                 <enum name="GL_PRIMITIVE_RESTART" />
221                 <enum name="GL_PRIMITIVE_RESTART_INDEX" />
222                 <command name="glPrimitiveRestartIndex" />
223             </require>
224         </extension>
225     </extensions>
226 </registry>