更新OpenGL的3.2从OpenGL的2.1

问题描述:

我想在Arch Linux的安装OBS-工作室https://obsproject.com/但其文件说更新OpenGL的3.2从OpenGL的2.1

的Linux

注:在OpenGL 3.2或更高版本是需要使用OBS多对 Linux。

glxinfo | grep "OpenGL" 

所以我的系统输出

glxinfo | grep "OpenGL" 
OpenGL vendor string: Intel Open Source Technology Center 
OpenGL renderer string: Mesa DRI Intel(R) Ironlake Mobile 
OpenGL version string: 2.1 Mesa 13.0.1 
OpenGL shading language version string: 1.20 
OpenGL extensions: 
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 13.0.1 
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16 
OpenGL ES profile extensions: 

它说:2.1所以我怎么能升级:您可以通过键入以下内容到终端检查什么版本的OpenGL由您 系统支持它到3.2

从arch inux文档https://wiki.archlinux.org/index.php/intel_graphics我已经安装mesa-libgl,xf86-video-intel包。从铬

结果:// GPU/

Initialization time  118 
In-process GPU false 
Sandboxed true 
GPU0 VENDOR = 0x8086, DEVICE= 0x0046 
Optimus  false 
AMD switchable false 
Driver vendor Mesa 
Driver version 13.0.1 
Driver date  
Pixel shader version 1.20 
Vertex shader version 1.20 
Max. MSAA samples 0 
Machine model name 
Machine model version 
GL_VENDOR Intel Open Source Technology Center 
GL_RENDERER  Mesa DRI Intel(R) Ironlake Mobile 
GL_VERSION 2.1 Mesa 13.0.1 
GL_EXTENSIONS GL_ARB_multisample GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_copy_texture GL_EXT_polygon_offset GL_EXT_subtexture GL_EXT_texture_object GL_EXT_vertex_array GL_EXT_compiled_vertex_array GL_EXT_texture GL_EXT_texture3D GL_IBM_rasterpos_clip GL_ARB_point_parameters GL_EXT_draw_range_elements GL_EXT_packed_pixels GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_separate_specular_color GL_EXT_texture_edge_clamp GL_SGIS_generate_mipmap GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_ARB_framebuffer_sRGB GL_ARB_multitexture GL_EXT_framebuffer_sRGB GL_IBM_multimode_draw_arrays GL_IBM_texture_mirrored_repeat GL_3DFX_texture_compression_FXT1 GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_transpose_matrix GL_EXT_blend_func_separate GL_EXT_fog_coord GL_EXT_multi_draw_arrays GL_EXT_secondary_color GL_EXT_texture_env_add GL_EXT_texture_filter_anisotropic GL_EXT_texture_lod_bias GL_INGR_blend_func_separate GL_NV_blend_square GL_NV_light_max_exponent GL_NV_texgen_reflection GL_NV_texture_env_combine4 GL_S3_s3tc GL_SUN_multi_draw_arrays GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_EXT_framebuffer_object GL_EXT_texture_compression_s3tc GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_MESA_window_pos GL_NV_packed_depth_stencil GL_NV_texture_rectangle GL_ARB_depth_texture GL_ARB_shadow GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_window_pos GL_EXT_stencil_two_side GL_EXT_texture_cube_map GL_NV_depth_clamp GL_APPLE_packed_pixels GL_APPLE_vertex_array_object GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_shader GL_ARB_shader_objects GL_ARB_vertex_program GL_ARB_vertex_shader GL_ATI_draw_buffers GL_ATI_texture_env_combine3 GL_ATI_texture_float GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_MESA_pack_invert GL_NV_primitive_restart GL_ARB_depth_clamp GL_ARB_fragment_program_shadow GL_ARB_half_float_pixel GL_ARB_point_sprite GL_ARB_shading_language_100 GL_ARB_sync GL_ARB_texture_non_power_of_two GL_ARB_vertex_buffer_object GL_ATI_blend_equation_separate GL_EXT_blend_equation_separate GL_OES_read_format GL_ARB_color_buffer_float GL_ARB_pixel_buffer_object GL_ARB_texture_compression_rgtc GL_ARB_texture_float GL_ARB_texture_rectangle GL_EXT_packed_float GL_EXT_pixel_buffer_object GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_rgtc GL_EXT_texture_rectangle GL_EXT_texture_sRGB GL_EXT_texture_shared_exponent GL_ARB_framebuffer_object GL_EXT_framebuffer_blit GL_EXT_packed_depth_stencil GL_APPLE_object_purgeable GL_ARB_vertex_array_object GL_ATI_separate_stencil GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_gpu_program_parameters GL_EXT_texture_array GL_EXT_texture_integer GL_EXT_texture_sRGB_decode GL_OES_EGL_image GL_AMD_performance_monitor GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_draw_instanced GL_ARB_half_float_vertex GL_ARB_instanced_arrays GL_ARB_map_buffer_range GL_ARB_texture_rg GL_ARB_texture_swizzle GL_ARB_vertex_array_bgra GL_EXT_texture_swizzle GL_EXT_vertex_array_bgra GL_NV_conditional_render GL_AMD_seamless_cubemap_per_texture GL_ARB_ES2_compatibility GL_ARB_debug_output GL_ARB_draw_elements_base_vertex GL_ARB_explicit_attrib_location GL_ARB_fragment_coord_conventions GL_ARB_provoking_vertex GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_shader_texture_lod GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_vertex_type_2_10_10_10_rev GL_EXT_provoking_vertex GL_EXT_texture_snorm GL_MESA_texture_signed_rgba GL_NV_texture_barrier GL_ARB_get_program_binary GL_ARB_robustness GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ARB_compressed_texture_pixel_storage GL_ARB_internalformat_query GL_ARB_map_buffer_alignment GL_ARB_shading_language_packing GL_ARB_texture_storage GL_AMD_shader_trinary_minmax GL_ARB_arrays_of_arrays GL_ARB_clear_buffer_object GL_ARB_copy_image GL_ARB_explicit_uniform_location GL_ARB_invalidate_subdata GL_ARB_program_interface_query GL_ARB_vertex_attrib_binding GL_KHR_debug GL_KHR_robustness GL_ARB_buffer_storage GL_ARB_clear_texture GL_ARB_internalformat_query2 GL_ARB_multi_bind GL_ARB_seamless_cubemap_per_texture GL_ARB_shader_draw_parameters GL_ARB_texture_mirror_clamp_to_edge GL_ARB_vertex_type_10f_11f_11f_rev GL_INTEL_performance_query GL_ARB_clip_control GL_ARB_get_texture_sub_image GL_ARB_pipeline_statistics_query GL_ARB_texture_barrier GL_EXT_polygon_offset_clamp GL_KHR_blend_equation_advanced GL_KHR_context_flush_control 
Disabled Extensions  GL_ARB_occlusion_query GL_ARB_occlusion_query2 GL_ARB_timer_query GL_EXT_timer_query 
Window system binding vendor SGI 
Window system binding version 1.4 
Window system binding extensions GLX_ARB_create_context GLX_ARB_create_context_profile GLX_ARB_fbconfig_float GLX_ARB_framebuffer_sRGB GLX_ARB_multisample GLX_EXT_create_context_es_profile GLX_EXT_create_context_es2_profile GLX_EXT_fbconfig_packed_float GLX_EXT_framebuffer_sRGB GLX_EXT_import_context GLX_EXT_texture_from_pixmap GLX_EXT_visual_info GLX_EXT_visual_rating GLX_MESA_copy_sub_buffer GLX_OML_swap_method GLX_SGI_swap_control GLX_SGIS_multisample GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGIX_visual_select_group GLX_INTEL_swap_event 
Window manager GNOME Shell 
XDG_CURRENT_DESKTOP  GNOME 
Compositing manager  Yes 
Direct rendering Yes 
Reset notification strategy  0x8261 
GPU process crash count  0 

我看到In-process GPU false这是否意味着我得买一个外置GPU

+0

你有哪些gpu? – BDL

+0

更新了问题 – codenut

的OpenGL 3。英特尔Ironlake支持x。您至少需要英特尔Sandy Bridge才能在英特尔GPU上获得现代OpenGL。

可以从台面的llvmpipesoftpipe软件渲染器通过设置LIBGL_ALWAYS_SOFTWARE=1环境变量得到的OpenGL 3.3。但是,由于这根本不会使用GPU,因此速度会很慢。

+0

请问能否介绍一下如何在arch上安装llvmpipe。我已经安装了llvm。 – codenut

+0

'llvmpipe'是mesa3d的一部分(您已经使用它)。不过,我不知道如何包装这些东西,所以我不知道你是否需要任何额外的软件包,或者如果你已经有了。你可以试试'LIBGL_ALWAYS_SOFTWARE = 1 glxinfo | grep OpenGL',看看你是否得到它,而不是你以前得到的inela ironlake后端。 – derhass

+0

它表示OpenGL版本字符串:3.0 Mesa 13.0.1但obs-studio想要3.2: – codenut

Chris Forbes有一个(不知道有多少)实验台面分支,应该让你至少GLSL 1.30

你还是会错过一个extension全OGL 3合规性。但我猜喜欢这将是一个进步?