1 2 Status of OpenGL 3.x features in Mesa 3 4 5 Note: when an item is marked as "DONE" it means all the core Mesa 6 infrastructure is complete but it may be the case that few (if any) drivers 7 implement the features. 8 9 10 Feature Status 11 ----------------------------------------------------- ------------------------ 12 13 GL 3.0: 14 15 GLSL 1.30 DONE 16 glBindFragDataLocation, glGetFragDataLocation DONE 17 Conditional rendering (GL_NV_conditional_render) DONE (i965, r300, r600, swrast) 18 Map buffer subranges (GL_ARB_map_buffer_range) DONE (i965, r300, r600, swrast) 19 Clamping controls (GL_ARB_color_buffer_float) DONE (i965, r300, r600) 20 Float textures, renderbuffers (GL_ARB_texture_float) DONE (i965, r300, r600) 21 GL_EXT_packed_float DONE (i965, r600) 22 GL_EXT_texture_shared_exponent DONE (i965, r600, swrast) 23 Float depth buffers (GL_ARB_depth_buffer_float) DONE (i965, r600) 24 Framebuffer objects (GL_ARB_framebuffer_object) DONE (i965, r300, r600, swrast) 25 Half-float DONE 26 Non-normalized Integer texture/framebuffer formats DONE (i965) 27 1D/2D Texture arrays DONE 28 Per-buffer blend and masks (GL_EXT_draw_buffers2) DONE (i965, r600, swrast) 29 GL_EXT_texture_compression_rgtc DONE (i965, r300, r600, swrast) 30 Red and red/green texture formats DONE (i965, swrast, gallium) 31 Transform feedback (GL_EXT_transform_feedback) DONE (i965) 32 Vertex array objects (GL_APPLE_vertex_array_object) DONE (i965, r300, r600, swrast) 33 sRGB framebuffer format (GL_EXT_framebuffer_sRGB) DONE (i965, r600) 34 glClearBuffer commands DONE 35 glGetStringi command DONE 36 glTexParameterI, glGetTexParameterI commands DONE 37 glVertexAttribI commands DONE 38 Depth format cube textures DONE 39 GLX_ARB_create_context (GLX 1.4 is required) DONE 40 41 42 GL 3.1: 43 44 GLSL 1.40 DONE (i965) 45 Forward compatibile context support/deprecations DONE (i965) 46 Instanced drawing (GL_ARB_draw_instanced) DONE (i965, gallium, swrast) 47 Buffer copying (GL_ARB_copy_buffer) DONE (i965, r300, r600, swrast) 48 Primitive restart (GL_NV_primitive_restart) DONE (i965, r600) 49 16 vertex texture image units DONE 50 Texture buffer objs (GL_ARB_texture_buffer_object) DONE for OpenGL 3.1 contexts (i965) 51 Rectangular textures (GL_ARB_texture_rectangle) DONE (i965, r300, r600, swrast) 52 Uniform buffer objs (GL_ARB_uniform_buffer_object) DONE (i965) 53 Signed normalized textures (GL_EXT_texture_snorm) DONE (i965, r300, r600) 54 55 56 GL 3.2: 57 58 Core/compatibility profiles DONE 59 GLSL 1.50 not started 60 Geometry shaders (GL_ARB_geometry_shader4) partially done (Zack) 61 BGRA vertex order (GL_ARB_vertex_array_bgra) DONE (i965, r300, r600, swrast) 62 Base vertex offset(GL_ARB_draw_elements_base_vertex) DONE (i965, r300, r600, swrast) 63 Frag shader coord (GL_ARB_fragment_coord_conventions) DONE (i965, r300, r600, swrast) 64 Provoking vertex (GL_ARB_provoking_vertex) DONE (i965, r300, r600, swrast) 65 Seamless cubemaps (GL_ARB_seamless_cube_map) DONE (i965, r600) 66 Multisample textures (GL_ARB_texture_multisample) not started 67 Frag depth clamp (GL_ARB_depth_clamp) DONE (i965, r600, swrast) 68 Fence objects (GL_ARB_sync) DONE (i965, r300, r600, swrast) 69 GLX_ARB_create_context_profile DONE 70 71 72 GL 3.3: 73 74 GLSL 3.30 new features in this version pretty much done 75 GL_ARB_blend_func_extended DONE (i965, r600, softpipe) 76 GL_ARB_explicit_attrib_location DONE (i915, i965, r300, r600, swrast) 77 GL_ARB_occlusion_query2 DONE (i965, r300, r600, swrast) 78 GL_ARB_sampler_objects DONE (i965, r300, r600) 79 GL_ARB_shader_bit_encoding DONE 80 GL_ARB_texture_rgb10_a2ui DONE (i965, r600) 81 GL_ARB_texture_swizzle DONE (same as EXT version) (i965, r300, r600, swrast) 82 GL_ARB_timer_query DONE (i965) 83 GL_ARB_instanced_arrays DONE (i965, r300, r600) 84 GL_ARB_vertex_type_2_10_10_10_rev DONE (r600) 85 86 87 GL 4.0: 88 89 GLSL 4.0 not started 90 GL_ARB_texture_query_lod not started 91 GL_ARB_draw_buffers_blend DONE (i965, r600, softpipe) 92 GL_ARB_draw_indirect not started 93 GL_ARB_gpu_shader5 not started 94 GL_ARB_gpu_shader_fp64 not started 95 GL_ARB_sample_shading not started 96 GL_ARB_shader_subroutine not started 97 GL_ARB_tessellation_shader not started 98 GL_ARB_texture_buffer_object_rgb32 not started 99 GL_ARB_texture_cube_map_array not started 100 GL_ARB_texture_gather not started 101 GL_ARB_transform_feedback2 DONE 102 GL_ARB_transform_feedback3 DONE 103 104 105 GL 4.1: 106 107 GLSL 4.1 not started 108 GL_ARB_ES2_compatibility DONE (i965, r300, r600) 109 GL_ARB_get_program_binary not started 110 GL_ARB_separate_shader_objects some infrastructure done 111 GL_ARB_shader_precision not started 112 GL_ARB_vertex_attrib_64bit not started 113 GL_ARB_viewport_array not started 114 115 116 GL 4.2: 117 118 GLSL 4.2 not started 119 GL_ARB_texture_compression_bptc not started 120 GL_ARB_compressed_texture_pixel_storage not started 121 GL_ARB_shader_atomic_counters not started 122 GL_ARB_texture_storage DONE (r300, r600, swrast) 123 GL_ARB_transform_feedback_instanced DONE 124 GL_ARB_base_instance DONE (nv50, nvc0, r600, radeonsi) 125 GL_ARB_shader_image_load_store not started 126 GL_ARB_conservative_depth DONE (softpipe) 127 GL_ARB_shading_language_420pack not started 128 GL_ARB_internalformat_query not started 129 GL_ARB_map_buffer_alignment not started 130 131 132 GL 4.3: 133 134 GLSL 4.3 not started 135 ARB_arrays_of_arrays not started 136 ARB_ES3_compatibility not started 137 ARB_clear_buffer_object not started 138 ARB_compute_shader started (gallium) 139 ARB_copy_image not started 140 ARB_debug_group not started 141 ARB_debug_label not started 142 ARB_debug_output DONE 143 ARB_debug_output2 not started 144 ARB_explicit_uniform_location not started 145 ARB_fragment_layer_viewport not started 146 ARB_framebuffer_no_attachments not started 147 ARB_internalformat_query2 not started 148 ARB_invalidate_subdata not started 149 ARB_multi_draw_indirect not started 150 ARB_program_interface_query not started 151 ARB_robust_buffer_access_behavior not started 152 ARB_shader_image_size not started 153 ARB_shader_storage_buffer_object not started 154 ARB_stencil_texturing not started 155 ARB_texture_buffer_range not started 156 ARB_texture_query_levels not started 157 ARB_texture_storage_multisample not started 158 ARB_texture_view not started 159 ARB_vertex_attrib_binding not started 160 161 162 More info about these features and the work involved can be found at 163 http://dri.freedesktop.org/wiki/MissingFunctionality 164