blob: 50b429cee15340e204351f719dcea6c9d037c9b5 [file] [log] [blame]
Brian Paul9b0bbe12009-12-30 10:39:20 -07001
2Status of OpenGL 3.x features in Mesa
3
4
5Note: when an item is marked as "DONE" it means all the core Mesa
6infrastructure is complete but it may be the case that few (if any) drivers
7implement the features.
8
9
Marek Olšákc40f8d02013-07-30 22:29:11 +020010OpenGL Core and Compatibility context support
11
12OpenGL 3.1 and later versions are only supported with the Core profile.
13There are no plans to support GL_ARB_compatibility. The last supported OpenGL
14version with all deprecated features is 3.0. Some of the later GL features
15are exposed in the 3.0 context as extensions.
16
17
Brian Paul9b0bbe12009-12-30 10:39:20 -070018Feature Status
19----------------------------------------------------- ------------------------
20
Romain Failliotb3404692014-11-27 18:02:20 +010021GL 3.0, GLSL 1.30 --- all DONE: i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe
Brian Paul9b0bbe12009-12-30 10:39:20 -070022
Joerg Mayerf9868922013-11-16 22:13:03 +000023 glBindFragDataLocation, glGetFragDataLocation DONE
Marek Olšák4e46af02015-03-16 23:19:17 +010024 Conditional rendering (GL_NV_conditional_render) DONE ()
25 Map buffer subranges (GL_ARB_map_buffer_range) DONE ()
Marek Olšák2b537962015-03-16 23:15:22 +010026 Clamping controls (GL_ARB_color_buffer_float) DONE ()
27 Float textures, renderbuffers (GL_ARB_texture_float) DONE ()
Joerg Mayerf9868922013-11-16 22:13:03 +000028 GL_EXT_packed_float DONE ()
Marek Olšák4e46af02015-03-16 23:19:17 +010029 GL_EXT_texture_shared_exponent DONE ()
Joerg Mayerf9868922013-11-16 22:13:03 +000030 Float depth buffers (GL_ARB_depth_buffer_float) DONE ()
Marek Olšák4e46af02015-03-16 23:19:17 +010031 Framebuffer objects (GL_ARB_framebuffer_object) DONE ()
Ian Romanick1edca152014-01-13 15:23:48 -080032 GL_ARB_half_float_pixel DONE (all drivers)
Marek Olšák4e46af02015-03-16 23:19:17 +010033 GL_ARB_half_float_vertex DONE ()
Marek Olšák0ad57be2013-12-04 00:25:55 +010034 GL_EXT_texture_integer DONE ()
35 GL_EXT_texture_array DONE ()
Marek Olšák4e46af02015-03-16 23:19:17 +010036 Per-buffer blend and masks (GL_EXT_draw_buffers2) DONE ()
37 GL_EXT_texture_compression_rgtc DONE ()
38 GL_ARB_texture_rg DONE ()
Joerg Mayerf9868922013-11-16 22:13:03 +000039 Transform feedback (GL_EXT_transform_feedback) DONE ()
Marek Olšák2b537962015-03-16 23:15:22 +010040 Vertex array objects (GL_ARB_vertex_array_object) DONE ()
Joerg Mayerf9868922013-11-16 22:13:03 +000041 sRGB framebuffer format (GL_EXT_framebuffer_sRGB) DONE ()
42 glClearBuffer commands DONE
43 glGetStringi command DONE
44 glTexParameterI, glGetTexParameterI commands DONE
45 glVertexAttribI commands DONE
46 Depth format cube textures DONE ()
47 GLX_ARB_create_context (GLX 1.4 is required) DONE
Marek Olšák2b537962015-03-16 23:15:22 +010048 Multisample anti-aliasing DONE (llvmpipe (*), softpipe (*))
Brian Paul9b0bbe12009-12-30 10:39:20 -070049
Roland Scheidegger17eabfe2014-08-25 18:21:53 +020050(*) llvmpipe and softpipe have fake Multisample anti-aliasing support
Brian Paul9b0bbe12009-12-30 10:39:20 -070051
Roland Scheidegger17eabfe2014-08-25 18:21:53 +020052
53GL 3.1, GLSL 1.40 --- all DONE: i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe
Brian Paul9b0bbe12009-12-30 10:39:20 -070054
Joerg Mayerf9868922013-11-16 22:13:03 +000055 Forward compatible context support/deprecations DONE ()
Marek Olšák4e46af02015-03-16 23:19:17 +010056 Instanced drawing (GL_ARB_draw_instanced) DONE ()
57 Buffer copying (GL_ARB_copy_buffer) DONE ()
Marek Olšák2b537962015-03-16 23:15:22 +010058 Primitive restart (GL_NV_primitive_restart) DONE ()
Joerg Mayerf9868922013-11-16 22:13:03 +000059 16 vertex texture image units DONE ()
60 Texture buffer objs (GL_ARB_texture_buffer_object) DONE for OpenGL 3.1 contexts ()
Marek Olšák4e46af02015-03-16 23:19:17 +010061 Rectangular textures (GL_ARB_texture_rectangle) DONE ()
62 Uniform buffer objs (GL_ARB_uniform_buffer_object) DONE ()
Marek Olšák2b537962015-03-16 23:15:22 +010063 Signed normalized textures (GL_EXT_texture_snorm) DONE ()
Brian Paul9b0bbe12009-12-30 10:39:20 -070064
65
Roland Scheidegger17eabfe2014-08-25 18:21:53 +020066GL 3.2, GLSL 1.50 --- all DONE: i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe
Brian Paul9b0bbe12009-12-30 10:39:20 -070067
Joerg Mayerf9868922013-11-16 22:13:03 +000068 Core/compatibility profiles DONE
Joerg Mayerf9868922013-11-16 22:13:03 +000069 Geometry shaders DONE ()
Marek Olšák4e46af02015-03-16 23:19:17 +010070 BGRA vertex order (GL_ARB_vertex_array_bgra) DONE ()
71 Base vertex offset(GL_ARB_draw_elements_base_vertex) DONE ()
72 Frag shader coord (GL_ARB_fragment_coord_conventions) DONE ()
73 Provoking vertex (GL_ARB_provoking_vertex) DONE ()
Dave Airlie16215a92014-02-05 07:52:48 +100074 Seamless cubemaps (GL_ARB_seamless_cube_map) DONE ()
75 Multisample textures (GL_ARB_texture_multisample) DONE ()
Marek Olšák4e46af02015-03-16 23:19:17 +010076 Frag depth clamp (GL_ARB_depth_clamp) DONE ()
77 Fence objects (GL_ARB_sync) DONE ()
Joerg Mayerf9868922013-11-16 22:13:03 +000078 GLX_ARB_create_context_profile DONE
Brian Paul9b0bbe12009-12-30 10:39:20 -070079
80
Roland Scheidegger17eabfe2014-08-25 18:21:53 +020081GL 3.3, GLSL 3.30 --- all DONE: i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe
Brian Pauld35c2ca2010-05-11 21:03:53 -060082
Roland Scheidegger17eabfe2014-08-25 18:21:53 +020083 GL_ARB_blend_func_extended DONE ()
Ian Romanickbc0ed682014-01-13 14:48:16 -080084 GL_ARB_explicit_attrib_location DONE (all drivers that support GLSL)
Marek Olšák4e46af02015-03-16 23:19:17 +010085 GL_ARB_occlusion_query2 DONE ()
Ian Romanickbc0ed682014-01-13 14:48:16 -080086 GL_ARB_sampler_objects DONE (all drivers)
Dave Airlie16215a92014-02-05 07:52:48 +100087 GL_ARB_shader_bit_encoding DONE ()
88 GL_ARB_texture_rgb10_a2ui DONE ()
Marek Olšák4e46af02015-03-16 23:19:17 +010089 GL_ARB_texture_swizzle DONE ()
Dave Airlie16215a92014-02-05 07:52:48 +100090 GL_ARB_timer_query DONE ()
Marek Olšák2b537962015-03-16 23:15:22 +010091 GL_ARB_instanced_arrays DONE ()
Dave Airlie16215a92014-02-05 07:52:48 +100092 GL_ARB_vertex_type_2_10_10_10_rev DONE ()
Brian Pauld35c2ca2010-05-11 21:03:53 -060093
94
Dave Airlie5ca98252015-12-07 10:06:44 +100095GL 4.0, GLSL 4.00 --- all DONE: nvc0, r600, radeonsi
Brian Pauld35c2ca2010-05-11 21:03:53 -060096
Dave Airlie5ca98252015-12-07 10:06:44 +100097 GL_ARB_draw_buffers_blend DONE (i965, nv50, llvmpipe, softpipe)
98 GL_ARB_draw_indirect DONE (i965, llvmpipe, softpipe)
99 GL_ARB_gpu_shader5 DONE (i965)
Chris Forbes9578bb22014-04-27 16:03:57 +1200100 - 'precise' qualifier DONE
Glenn Kennard24a1a152015-10-07 17:17:34 +0200101 - Dynamically uniform sampler array indices DONE (softpipe)
102 - Dynamically uniform UBO array indices DONE ()
Chris Forbes4312e972014-06-04 19:31:30 +1200103 - Implicit signed -> unsigned conversions DONE
Chris Forbes139f1272014-08-10 16:08:36 +1200104 - Fused multiply-add DONE ()
Glenn Kennard24a1a152015-10-07 17:17:34 +0200105 - Packing/bitfield/conversion functions DONE (softpipe)
106 - Enhanced textureGather DONE (softpipe)
107 - Geometry shader instancing DONE (llvmpipe, softpipe)
Chris Forbes139f1272014-08-10 16:08:36 +1200108 - Geometry shader multiple streams DONE ()
Glenn Kennard24a1a152015-10-07 17:17:34 +0200109 - Enhanced per-sample shading DONE ()
110 - Interpolation functions DONE ()
Chris Forbes7bf768b2014-06-04 20:12:58 +1200111 - New overload resolution rules DONE
Dave Airlie5ca98252015-12-07 10:06:44 +1000112 GL_ARB_gpu_shader_fp64 DONE (llvmpipe, softpipe)
113 GL_ARB_sample_shading DONE (i965, nv50)
114 GL_ARB_shader_subroutine DONE (i965, nv50, llvmpipe, softpipe)
115 GL_ARB_tessellation_shader DONE ()
116 GL_ARB_texture_buffer_object_rgb32 DONE (i965, llvmpipe, softpipe)
117 GL_ARB_texture_cube_map_array DONE (i965, nv50, llvmpipe, softpipe)
118 GL_ARB_texture_gather DONE (i965, nv50, llvmpipe, softpipe)
119 GL_ARB_texture_query_lod DONE (i965, nv50, softpipe)
120 GL_ARB_transform_feedback2 DONE (i965, nv50, llvmpipe, softpipe)
121 GL_ARB_transform_feedback3 DONE (i965, nv50, llvmpipe, softpipe)
Marek Olšák2892c8b2010-11-21 22:54:33 +0100122
123
Dave Airlie1b2b0e42015-07-29 10:51:46 +0100124GL 4.1, GLSL 4.10 --- all DONE: nvc0, radeonsi
Marek Olšák2892c8b2010-11-21 22:54:33 +0100125
Dave Airlie1b2b0e42015-07-29 10:51:46 +0100126 GL_ARB_ES2_compatibility DONE (i965, nv50, r600, llvmpipe, softpipe)
Joerg Mayerf9868922013-11-16 22:13:03 +0000127 GL_ARB_get_program_binary DONE (0 binary formats)
Ian Romanicka06c9792014-05-02 17:19:48 -0700128 GL_ARB_separate_shader_objects DONE (all drivers)
Dave Airlie7c476852015-07-23 11:19:15 +1000129 GL_ARB_shader_precision DONE (all drivers that support GLSL 4.10)
Glenn Kennardce340482015-09-11 12:42:23 +0200130 GL_ARB_vertex_attrib_64bit DONE (r600, llvmpipe, softpipe)
Dave Airlie1b2b0e42015-07-29 10:51:46 +0100131 GL_ARB_viewport_array DONE (i965, nv50, r600, llvmpipe)
Brian Pauld35c2ca2010-05-11 21:03:53 -0600132
133
Matt Turnerb6ab52b2014-08-06 21:11:50 -0700134GL 4.2, GLSL 4.20:
Marek Olšák768589e2012-07-05 20:27:28 +0200135
Marek Olšákc3bd1302014-08-15 02:01:07 +0200136 GL_ARB_texture_compression_bptc DONE (i965, nvc0, r600, radeonsi)
Chris Forbesbe1b5722014-06-02 16:44:40 +1200137 GL_ARB_compressed_texture_pixel_storage DONE (all drivers)
Joerg Mayerf9868922013-11-16 22:13:03 +0000138 GL_ARB_shader_atomic_counters DONE (i965)
139 GL_ARB_texture_storage DONE (all drivers)
Roland Scheidegger971be2b2015-05-12 04:48:48 +0200140 GL_ARB_transform_feedback_instanced DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Roland Scheidegger51b52ea2014-09-01 16:08:12 +0200141 GL_ARB_base_instance DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Francisco Jerez3c04a902015-05-01 17:00:02 +0300142 GL_ARB_shader_image_load_store DONE (i965)
Joerg Mayerf9868922013-11-16 22:13:03 +0000143 GL_ARB_conservative_depth DONE (all drivers that support GLSL 1.30)
144 GL_ARB_shading_language_420pack DONE (all drivers that support GLSL 1.30)
Matt Turner97399fc2015-03-11 18:43:56 -0700145 GL_ARB_shading_language_packing DONE (all drivers)
Marek Olšák2b537962015-03-16 23:15:22 +0100146 GL_ARB_internalformat_query DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Ian Romanickca385bf2014-01-22 16:17:48 -0800147 GL_ARB_map_buffer_alignment DONE (all drivers)
Brian Pauld35c2ca2010-05-11 21:03:53 -0600148
Brian Paul90894362010-01-05 16:03:11 -0700149
Matt Turnerb6ab52b2014-08-06 21:11:50 -0700150GL 4.3, GLSL 4.30:
Jason Wood56c1f552012-08-06 13:47:27 -0600151
Timothy Arceri6e3b3802015-10-16 10:28:48 +1100152 GL_ARB_arrays_of_arrays DONE (i965)
Marek Olšák3d567322014-08-02 22:32:25 +0200153 GL_ARB_ES3_compatibility DONE (all drivers that support GLSL 3.30)
Ian Romanickbc0ed682014-01-13 14:48:16 -0800154 GL_ARB_clear_buffer_object DONE (all drivers)
Jordan Justen1a428a52014-08-27 13:22:12 -0700155 GL_ARB_compute_shader in progress (jljusten)
Ilia Mirkind0693d72015-10-28 20:52:50 -0400156 GL_ARB_copy_image DONE (i965, nv50, nvc0, radeonsi)
Joerg Mayerf9868922013-11-16 22:13:03 +0000157 GL_KHR_debug DONE (all drivers)
Tapani Pälli5cb8fdb2014-03-24 11:29:08 +0200158 GL_ARB_explicit_uniform_location DONE (all drivers that support GLSL)
Kenneth Graunkecf932512015-10-28 22:02:39 -0700159 GL_ARB_fragment_layer_viewport DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe)
Kevin Rogovinff069012015-06-17 13:29:59 +0300160 GL_ARB_framebuffer_no_attachments DONE (i965)
Eduardo Lima Mitev27a88a92015-11-26 21:57:40 +0100161 GL_ARB_internalformat_query2 in progress (elima)
Joerg Mayerf9868922013-11-16 22:13:03 +0000162 GL_ARB_invalidate_subdata DONE (all drivers)
Glenn Kennardd80701d2015-02-24 15:59:16 +0100163 GL_ARB_multi_draw_indirect DONE (i965, nvc0, r600, radeonsi, llvmpipe, softpipe)
Tapani Pälli41c230c2015-04-07 12:07:03 +0300164 GL_ARB_program_interface_query DONE (all drivers)
Joerg Mayerf9868922013-11-16 22:13:03 +0000165 GL_ARB_robust_buffer_access_behavior not started
Martin Perese5851cf2015-04-29 12:42:16 +0300166 GL_ARB_shader_image_size DONE (i965)
Iago Toral Quiroga065e7d32015-05-13 13:37:42 +0200167 GL_ARB_shader_storage_buffer_object DONE (i965)
Roland Scheidegger17eabfe2014-08-25 18:21:53 +0200168 GL_ARB_stencil_texturing DONE (i965/gen8+, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
169 GL_ARB_texture_buffer_range DONE (nv50, nvc0, i965, r600, radeonsi, llvmpipe)
Marek Olšák1df71992014-06-14 03:19:26 +0200170 GL_ARB_texture_query_levels DONE (all drivers that support GLSL 1.30)
Joerg Mayerf9868922013-11-16 22:13:03 +0000171 GL_ARB_texture_storage_multisample DONE (all drivers that support GL_ARB_texture_multisample)
Glenn Kennardc878d612015-10-16 01:53:47 +0200172 GL_ARB_texture_view DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Joerg Mayerf9868922013-11-16 22:13:03 +0000173 GL_ARB_vertex_attrib_binding DONE (all drivers)
Jason Wood56c1f552012-08-06 13:47:27 -0600174
175
Matt Turnerb6ab52b2014-08-06 21:11:50 -0700176GL 4.4, GLSL 4.40:
Chris Forbes5a7bdd42013-07-23 09:17:47 +1200177
Timothy Arceri4ca203f2014-08-15 07:45:50 +1000178 GL_MAX_VERTEX_ATTRIB_STRIDE DONE (all drivers)
Marek Olšák42715ad2015-03-18 01:50:03 +0100179 GL_ARB_buffer_storage DONE (i965, nv50, nvc0, r600, radeonsi)
Ilia Mirkinc4182bb2015-11-09 12:39:05 -0500180 GL_ARB_clear_texture DONE (i965, nv50, nvc0)
Timothy Arceri64831832015-10-04 11:23:04 +1100181 GL_ARB_enhanced_layouts in progress (Timothy)
Timothy Arcerib109cd32015-11-05 22:17:36 +1100182 - compile-time constant expressions DONE
Timothy Arceri64831832015-10-04 11:23:04 +1100183 - explicit byte offsets for blocks in progress
184 - forced alignment within blocks in progress
185 - specified vec4-slot component numbers in progress
186 - specified transform/feedback layout in progress
187 - input/output block locations in progress
Fredrik Höglunde6ff5572013-11-18 18:53:23 +0100188 GL_ARB_multi_bind DONE (all drivers)
Joerg Mayerf9868922013-11-16 22:13:03 +0000189 GL_ARB_query_buffer_object not started
Marek Olšák42715ad2015-03-18 01:50:03 +0100190 GL_ARB_texture_mirror_clamp_to_edge DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Dave Airlie734bcee2015-04-05 14:46:11 +1000191 GL_ARB_texture_stencil8 DONE (nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Roland Scheidegger17eabfe2014-08-25 18:21:53 +0200192 GL_ARB_vertex_type_10f_11f_11f_rev DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Chris Forbes5a7bdd42013-07-23 09:17:47 +1200193
Ilia Mirkin82903ac2014-08-11 15:07:09 -0400194GL 4.5, GLSL 4.50:
195
196 GL_ARB_ES3_1_compatibility not started
Mathias Fröhlichfdd90fc2015-03-29 16:52:57 +0200197 GL_ARB_clip_control DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Edward O'Callaghan82546722015-07-27 11:01:47 +1000198 GL_ARB_conditional_render_inverted DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Tobias Klausmann843ff4b2015-05-25 15:57:09 +0200199 GL_ARB_cull_distance in progress (Tobias)
Dave Airliebb9d59a2015-07-17 05:35:30 +0100200 GL_ARB_derivative_control DONE (i965, nv50, nvc0, r600, radeonsi)
Fredrik Höglundd9109cc2015-05-07 20:29:21 +0200201 GL_ARB_direct_state_access DONE (all drivers)
Brian Paulb94367b2015-07-21 18:35:38 -0600202 GL_ARB_get_texture_sub_image DONE (all drivers)
Ilia Mirkin72ebd532015-09-18 19:08:35 -0400203 GL_ARB_shader_texture_image_samples DONE (i965, nv50, nvc0, r600, radeonsi)
Ilia Mirkin71e18742015-08-13 15:39:40 -0400204 GL_ARB_texture_barrier DONE (i965, nv50, nvc0, r600, radeonsi)
Neil Roberts2dbc6a02015-08-28 14:29:22 +0100205 GL_KHR_context_flush_control DONE (all - but needs GLX/EGL extension to be useful)
Ilia Mirkin82903ac2014-08-11 15:07:09 -0400206 GL_KHR_robust_buffer_access_behavior not started
207 GL_KHR_robustness 90% done (the ARB variant)
Matt Turner97399fc2015-03-11 18:43:56 -0700208 GL_EXT_shader_integer_mix DONE (all drivers that support GLSL)
Ilia Mirkin82903ac2014-08-11 15:07:09 -0400209
Dave Airliec6323342014-08-11 09:04:47 +1000210These are the extensions cherry-picked to make GLES 3.1
211GLES3.1, GLSL ES 3.1
Timothy Arceri6e3b3802015-10-16 10:28:48 +1100212 GL_ARB_arrays_of_arrays DONE (i965)
Jordan Justen1a428a52014-08-27 13:22:12 -0700213 GL_ARB_compute_shader in progress (jljusten)
Glenn Kennardd80701d2015-02-24 15:59:16 +0100214 GL_ARB_draw_indirect DONE (i965, nvc0, r600, radeonsi, llvmpipe, softpipe)
Dave Airliec6323342014-08-11 09:04:47 +1000215 GL_ARB_explicit_uniform_location DONE (all drivers that support GLSL)
Kevin Rogovinff069012015-06-17 13:29:59 +0300216 GL_ARB_framebuffer_no_attachments DONE (i965)
Tapani Pälli41c230c2015-04-07 12:07:03 +0300217 GL_ARB_program_interface_query DONE (all drivers)
Dave Airliec6323342014-08-11 09:04:47 +1000218 GL_ARB_shader_atomic_counters DONE (i965)
Francisco Jerezf6c622f2015-08-20 13:46:53 +0300219 GL_ARB_shader_image_load_store DONE (i965)
Martin Perese5851cf2015-04-29 12:42:16 +0300220 GL_ARB_shader_image_size DONE (i965)
Iago Toral Quiroga065e7d32015-05-13 13:37:42 +0200221 GL_ARB_shader_storage_buffer_object DONE (i965)
Matt Turner97399fc2015-03-11 18:43:56 -0700222 GL_ARB_shading_language_packing DONE (all drivers)
Dave Airliec6323342014-08-11 09:04:47 +1000223 GL_ARB_separate_shader_objects DONE (all drivers)
Roland Scheidegger17eabfe2014-08-25 18:21:53 +0200224 GL_ARB_stencil_texturing DONE (i965/gen8+, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
Ian Romanick56030a72015-04-28 18:01:00 -0700225 Multisample textures (GL_ARB_texture_multisample) DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe)
226 GL_ARB_texture_storage_multisample DONE (all drivers that support GL_ARB_texture_multisample)
Dave Airliec6323342014-08-11 09:04:47 +1000227 GL_ARB_vertex_attrib_binding DONE (all drivers)
228 GS5 Enhanced textureGather DONE (i965, nvc0, r600, radeonsi)
Marek Olšák9d1682d2015-03-16 23:24:15 +0100229 GS5 Packing/bitfield/conversion functions DONE (i965, nvc0, r600, radeonsi)
Dave Airliec6323342014-08-11 09:04:47 +1000230 GL_EXT_shader_integer_mix DONE (all drivers that support GLSL)
231
Tapani Pällid1bce522015-09-14 08:50:51 +0300232 Additional functionality not covered above:
233 glMemoryBarrierByRegion DONE
234 glGetTexLevelParameter[fi]v - needs updates DONE
235 glGetBooleani_v - restrict to GLES enums
236 gl_HelperInvocation support
Ilia Mirkin82903ac2014-08-11 15:07:09 -0400237
Thomas Helland2e7e3fe2015-08-12 15:07:57 +0200238GLES3.2, GLSL ES 3.2
239 GL_EXT_color_buffer_float DONE (all drivers)
240 GL_KHR_blend_equation_advanced not started
241 GL_KHR_debug DONE (all drivers)
242 GL_KHR_robustness 90% done (the ARB variant)
Ilia Mirkinf0b9d532015-09-14 01:07:05 -0400243 GL_KHR_texture_compression_astc_ldr DONE (i965/gen9+)
Thomas Helland2e7e3fe2015-08-12 15:07:57 +0200244 GL_OES_copy_image not started (based on GL_ARB_copy_image, which is done for some drivers)
245 GL_OES_draw_buffers_indexed not started
Ryan Houdekaf7c98a2015-11-01 21:25:27 -0600246 GL_OES_draw_elements_base_vertex DONE (all drivers)
Marta Lofstedt44944a62015-11-27 15:31:10 +0100247 GL_OES_geometry_shader started (Marta)
Thomas Helland2e7e3fe2015-08-12 15:07:57 +0200248 GL_OES_gpu_shader5 not started (based on parts of GL_ARB_gpu_shader5, which is done for some drivers)
249 GL_OES_primitive_bounding box not started
250 GL_OES_sample_shading not started (based on parts of GL_ARB_sample_shading, which is done for some drivers)
251 GL_OES_sample_variables not started (based on parts of GL_ARB_sample_shading, which is done for some drivers)
252 GL_OES_shader_image_atomic not started (based on parts of GL_ARB_shader_image_load_store, which is done for some drivers)
253 GL_OES_shader_io_blocks not started (based on parts of GLSL 1.50, which is done)
254 GL_OES_shader_multisample_interpolation not started (based on parts of GL_ARB_gpu_shader5, which is done)
255 GL_OES_tessellation_shader not started (based on GL_ARB_tessellation_shader, which is done for some drivers)
256 GL_OES_texture_border_clamp not started (based on GL_ARB_texture_border_clamp, which is done)
257 GL_OES_texture_buffer not started (based on GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_range, and GL_ARB_texture_buffer_object_rgb32 that are all done)
258 GL_OES_texture_cube_map_array not started (based on GL_ARB_texture_cube_map_array, which is done for all drivers)
259 GL_OES_texture_stencil8 not started (based on GL_ARB_texture_stencil8, which is done for some drivers)
Tapani Pällid1bce522015-09-14 08:50:51 +0300260 GL_OES_texture_storage_multisample_2d_array DONE (all drivers that support GL_ARB_texture_multisample)
Thomas Helland2e7e3fe2015-08-12 15:07:57 +0200261
Brian Paul90894362010-01-05 16:03:11 -0700262More info about these features and the work involved can be found at
263http://dri.freedesktop.org/wiki/MissingFunctionality