1 2This is the status of GL extension support in the virglrenderer code base. 3 4The initial codebase has GL3.3 feature complete. 5 6Some features don't require renderer support and are handled in the 7guest driver completely. 8 9Feature Status 10----------------------------------------------------- ------------------------ 11GL 3.3, GLSL 3.30 --- renderer complete support. 12 13GL 4.0, GLSL 4.00 --- 14 15 GL_ARB_draw_buffers_blend DONE 16 GL_ARB_draw_indirect 17 GL_ARB_gpu_shader5 in progress 18 - 'precise' qualifier GUEST 19 - Dynamically uniform sampler array indices 20 - Dynamically uniform UBO array indices 21 - Implicit signed -> unsigned conversions GUEST 22 - Fused multiply-add 23 - Packing/bitfield/conversion functions 24 - Enhanced textureGather 25 - Geometry shader instancing 26 - Geometry shader multiple streams 27 - Enhanced per-sample shading 28 - Interpolation functions 29 - New overload resolution rules GUEST 30 GL_ARB_gpu_shader_fp64 31 GL_ARB_sample_shading 32 GL_ARB_shader_subroutine GUEST 33 GL_ARB_tessellation_shader 34 GL_ARB_texture_buffer_object_rgb32 DONE 35 GL_ARB_texture_cube_map_array DONE 36 GL_ARB_texture_gather 37 GL_ARB_texture_query_lod 38 GL_ARB_transform_feedback2 DONE 39 GL_ARB_transform_feedback3 DONE 40 41 42GL 4.1, GLSL 4.10 --- 43 44 GL_ARB_ES2_compatibility GUEST 45 GL_ARB_get_program_binary GUEST 46 GL_ARB_separate_shader_objects GUEST 47 GL_ARB_shader_precision GUEST 48 GL_ARB_vertex_attrib_64bit 49 GL_ARB_viewport_array DONE 50 51 52GL 4.2, GLSL 4.20: 53 54 GL_ARB_texture_compression_bptc DONE 55 GL_ARB_compressed_texture_pixel_storage 56 GL_ARB_shader_atomic_counters 57 GL_ARB_texture_storage 58 GL_ARB_transform_feedback_instanced 59 GL_ARB_base_instance 60 GL_ARB_shader_image_load_store 61 GL_ARB_conservative_depth 62 GL_ARB_shading_language_420pack 63 GL_ARB_shading_language_packing 64 GL_ARB_internalformat_query 65 GL_ARB_map_buffer_alignment 66 67 68GL 4.3, GLSL 4.30: 69 70 GL_ARB_arrays_of_arrays 71 GL_ARB_ES3_compatibility 72 GL_ARB_clear_buffer_object 73 GL_ARB_compute_shader 74 GL_ARB_copy_image 75 GL_KHR_debug 76 GL_ARB_explicit_uniform_location 77 GL_ARB_fragment_layer_viewport 78 GL_ARB_framebuffer_no_attachments 79 GL_ARB_internalformat_query2 80 GL_ARB_invalidate_subdata 81 GL_ARB_multi_draw_indirect 82 GL_ARB_program_interface_query 83 GL_ARB_robust_buffer_access_behavior 84 GL_ARB_shader_image_size 85 GL_ARB_shader_storage_buffer_object 86 GL_ARB_stencil_texturing DONE 87 GL_ARB_texture_buffer_range 88 GL_ARB_texture_query_levels 89 GL_ARB_texture_storage_multisample 90 GL_ARB_texture_view 91 GL_ARB_vertex_attrib_binding GUEST 92 93 94GL 4.4, GLSL 4.40: 95 96 GL_MAX_VERTEX_ATTRIB_STRIDE 97 GL_ARB_buffer_storage 98 GL_ARB_clear_texture 99 GL_ARB_enhanced_layouts 100 GL_ARB_multi_bind 101 GL_ARB_query_buffer_object 102 GL_ARB_texture_mirror_clamp_to_edge 103 GL_ARB_texture_stencil8 DONE 104 GL_ARB_vertex_type_10f_11f_11f_rev 105 106GL 4.5, GLSL 4.50: 107 108 GL_ARB_ES3_1_compatibility 109 GL_ARB_clip_control 110 GL_ARB_conditional_render_inverted 111 GL_ARB_cull_distance 112 GL_ARB_derivative_control 113 GL_ARB_direct_state_access GUEST 114 GL_ARB_get_texture_sub_image 115 GL_ARB_shader_texture_image_samples 116 GL_ARB_texture_barrier 117 GL_KHR_context_flush_control 118 GL_KHR_robust_buffer_access_behavior 119 GL_KHR_robustness 120 GL_EXT_shader_integer_mix 121 122