GL3.txt revision 3588098ed85bbd6bacac5a8dd3774569f1314783
1 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 10Feature Status 11----------------------------------------------------- ------------------------ 12 13GL 3.0: 14 15GLSL 1.30 DONE 16glBindFragDataLocation, glGetFragDataLocation DONE 17Conditional rendering (GL_NV_conditional_render) DONE (i965, r300, r600, swrast) 18Map buffer subranges (GL_ARB_map_buffer_range) DONE (i965, r300, r600, swrast) 19Clamping controls (GL_ARB_color_buffer_float) DONE (i965, r300, r600) 20Float textures, renderbuffers (GL_ARB_texture_float) DONE (i965, r300, r600) 21GL_EXT_packed_float DONE (i965, r600) 22GL_EXT_texture_shared_exponent DONE (i965, r600, swrast) 23Float depth buffers (GL_ARB_depth_buffer_float) DONE (i965, r600) 24Framebuffer objects (GL_ARB_framebuffer_object) DONE (i965, r300, r600, swrast) 25Half-float DONE 26Non-normalized Integer texture/framebuffer formats DONE (i965) 271D/2D Texture arrays DONE 28Per-buffer blend and masks (GL_EXT_draw_buffers2) DONE (i965, r600, swrast) 29GL_EXT_texture_compression_rgtc DONE (i965, r300, r600, swrast) 30Red and red/green texture formats DONE (i965, swrast, gallium) 31Transform feedback (GL_EXT_transform_feedback) DONE (i965) 32Vertex array objects (GL_APPLE_vertex_array_object) DONE (i965, r300, r600, swrast) 33sRGB framebuffer format (GL_EXT_framebuffer_sRGB) DONE (i965, r600) 34glClearBuffer commands DONE 35glGetStringi command DONE 36glTexParameterI, glGetTexParameterI commands DONE 37glVertexAttribI commands ~50% done (converts int 38 values to floats) 39Depth format cube textures DONE 40GLX_ARB_create_context (GLX 1.4 is required) DONE 41 42 43GL 3.1: 44 45GLSL 1.40 missing: UBOS, inverse(), 46 highp change 47Instanced drawing (GL_ARB_draw_instanced) DONE (i965, gallium, swrast) 48Buffer copying (GL_ARB_copy_buffer) DONE (i965, r300, r600, swrast) 49Primitive restart (GL_NV_primitive_restart) DONE (i965, r600) 5016 vertex texture image units DONE 51Texture buffer objs (GL_ARB_texture_buffer_object) needs GL3.1 enabling (i965) 52Rectangular textures (GL_ARB_texture_rectangle) DONE (i965, r300, r600, swrast) 53Uniform buffer objs (GL_ARB_uniform_buffer_object) not started 54Signed normalized textures (GL_EXT_texture_snorm) DONE (i965, r300, r600) 55 56 57GL 3.2: 58 59Core/compatibility profiles not started 60GLSL 1.50 not started 61Geometry shaders (GL_ARB_geometry_shader4) partially done (Zack) 62BGRA vertex order (GL_ARB_vertex_array_bgra) DONE (i965, r300, r600, swrast) 63Base vertex offset(GL_ARB_draw_elements_base_vertex) DONE (i965, r300, r600, swrast) 64Frag shader coord (GL_ARB_fragment_coord_conventions) DONE (i965, r300, r600, swrast) 65Provoking vertex (GL_ARB_provoking_vertex) DONE (i965, r300, r600, swrast) 66Seamless cubemaps (GL_ARB_seamless_cube_map) DONE (i965, r600) 67Multisample textures (GL_ARB_texture_multisample) not started 68Frag depth clamp (GL_ARB_depth_clamp) DONE (i965, r600, swrast) 69Fence objects (GL_ARB_sync) DONE (i965, r300, r600, swrast) 70GLX_ARB_create_context_profile DONE 71 72 73GL 3.3: 74 75GLSL 3.30 new features in this version pretty much done 76GL_ARB_blend_func_extended DONE (i965, r600, softpipe) 77GL_ARB_explicit_attrib_location DONE (i915, i965, r300, r600, swrast) 78GL_ARB_occlusion_query2 DONE (r300, r600, swrast) 79GL_ARB_sampler_objects DONE (i965, r300, r600) 80GL_ARB_shader_bit_encoding DONE 81GL_ARB_texture_rgb10_a2ui DONE (r600) 82GL_ARB_texture_swizzle DONE (same as EXT version) (i965, r300, r600, swrast) 83GL_ARB_timer_query ~60% done (the EXT variant) 84GL_ARB_instanced_arrays DONE (i965, r300, r600) 85GL_ARB_vertex_type_2_10_10_10_rev DONE (r600) 86 87 88GL 4.0: 89 90GLSL 4.0 not started 91GL_ARB_texture_query_lod not started 92GL_ARB_draw_buffers_blend DONE (i965, r600, softpipe) 93GL_ARB_draw_indirect not started 94GL_ARB_gpu_shader_fp64 not started 95GL_ARB_sample_shading not started 96GL_ARB_shader_subroutine not started 97GL_ARB_tessellation_shader not started 98GL_ARB_texture_buffer_object_rgb32 not started 99GL_ARB_texture_cube_map_array not started 100GL_ARB_texture_gather not started 101GL_ARB_transform_feedback2 DONE 102GL_ARB_transform_feedback3 not started 103 104 105GL 4.1: 106 107GLSL 4.1 not started 108GL_ARB_ES2_compatibility DONE (i965, r300, r600) 109GL_ARB_get_program_binary not started 110GL_ARB_separate_shader_objects some infrastructure done 111GL_ARB_shader_precision not started 112GL_ARB_vertex_attrib_64bit not started 113GL_ARB_viewport_array not started 114 115 116GL 4.2: 117GLSL 4.2 not started 118GL_ARB_texture_compression_bptc not started 119GL_ARB_compressed_texture_pixel_storage not started 120GL_ARB_shader_atomic_counters not started 121GL_ARB_texture_storage DONE (r300, r600, swrast) 122GL_ARB_transform_feedback_instanced not started 123GL_ARB_base_instance DONE (nv50, nvc0, r600, radeonsi) 124GL_ARB_shader_image_load_store not started 125GL_ARB_conservative_depth DONE (softpipe) 126GL_ARB_shading_language_420pack not started 127GL_ARB_internalformat_query not started 128GL_ARB_map_buffer_alignment not started 129 130 131More info about these features and the work involved can be found at 132http://dri.freedesktop.org/wiki/MissingFunctionality 133