On Thu, 26 December 2013 Carsten Haitzler (The Rasterman) wrote:
> On Thu, 26 Dec 2013 13:59:40 +0100 Bruno Prémont said:
> > On Thu, 26 December 2013 Carsten Haitzler (The Rasterman) wrote:
> > > On Thu, 26 Dec 2013 12:30:49 +0100 Bruno Prémont said:
> > > i855 is too old. no full shader support. evas requires proper  glsl 
> > > support
> > > u find in opengl 2.0 and on. notice you have only opengl 1.3 on the i855.
> > > you're missing a "shading language version" string... etc.
> > > 
> > > ie ... that gpu is way too old. proper glsl shaders or no gl rendering in
> > > evas. (it works on anything opengl2/opngles2 or better).
> > 
> > That's unfortunate. The CPU doing all the work makes system rather sluggish,
> > especially for compositing in E.
> > 
> > What feature does the shading (glsl) bring (or what would be lost in 
> > operating
> > without them - I have compositor effects disabled anyhow)?
> 
> the entire gl rendering engine is shader based. read up on opengl-es2. it is
> ONLY shaders. no shader - no draw. in order to support gles2 sensible we made
> the engine core all the same code. so since to support gles2 we need to be
> entirely shader-only - we do the same for "desktop gl". doing otherwise will
> increase the codebase significantly and be a lot of work to support.
> 
> so there isn't a "well you lose a feature by not having shaders". you lose the
> entire gl enigne.

Thanks, that's a fair explanation.

Would it be possible to extend the error message when refusing OpenGL
to be slightly more verbose about what is missing or might be missing?
Otherwise it's hard to find out what does not work.
In my case, I have EVAS OpenGL support built in, my HW advertises OpenGL
support - just not shader support which the message fails to mention.

On Enlightenment the error message should be extended by a few words,
Original message:
  Your display driver does not support OpenGL, or
  no OpenGL engines were compiled or installed for
  Evas or Ecore-Evas. Falling back to software engine.
Improved message:
  Your display driver does not support OpenGL shaders,
  no OpenGL engines were compiled or installed for
  Evas or Ecore-Evas. Falling back to software engine.
or
  Your display driver does not support OpenGL >= 1.4,
  no OpenGL engines were compiled or installed for
  Evas or Ecore-Evas. Falling back to software engine.

In addition it would help to log a warning in _evas_gl_common_version_check()
so readers of stderr could determine what causes OpenGL to fail
or not be available.


If I get the picture right, the only alternative to benefit from some
HW acceleation on older hardware would be a separate engine (old-OpenGL
or X-accel or the like - unless SoftwareX11 is already making use of as
much accel as possible)?

Bruno


> > > > Hi,
> > > > 
> > > > For me E18/evas says my system does not support OpenGL or Evas has no
> > > > OpenGL support.
> > > > I have both a i915GM and i855GM system with glxinfo as attached.
> > > > Same compile flags are being used on both for efl/e18.
> > > > 
> > > > Why is OpenGL not being seen/used on the i855GM (compositing is rather
> > > > slow when done by CPU)?
> > > > 
> > > > If some features are missing, isn't it possible to just disable
> > > > corresponding visual effects?
> > > > 
> > > > Bruno
> > > > 
> > > > The different between the two:
> > > > --- /tmp/glxinfo-i915GM 2013-12-16 19:59:45.476169559 +0100
> > > > +++ /tmp/glxinfo-i855GM 2013-12-16 19:59:44.186141694 +0100
> > > > @@ -14,9 +14,9 @@ client glx vendor string: Mesa Project a
> > > >  client glx version string: 1.4
> > > >  client glx extensions:
> > > >      GLX_ARB_create_context, GLX_ARB_create_context_profile, 
> > > > -    GLX_ARB_create_context_robustness, 
> > > > +    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float, 
> > > >      GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address,
> > > > GLX_ARB_multisample, 
> > > > -    GLX_EXT_create_context_es2_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_INTEL_swap_event, GLX_MESA_copy_sub_buffer, 
> > > > @@ -28,7 +28,7 @@ GLX version: 1.4
> > > >  GLX extensions:
> > > >      GLX_ARB_create_context, GLX_ARB_create_context_profile, 
> > > >      GLX_ARB_get_proc_address, GLX_ARB_multisample, 
> > > > -    GLX_EXT_create_context_es2_profile, GLX_EXT_import_context, 
> > > > +     GLX_EXT_import_context, 
> > > >      GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info,
> > > > GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, 
> > > >      GLX_MESA_multithread_makecurrent, GLX_MESA_swap_control, 
> > > > @@ -36,45 +36,44 @@ GLX extensions:
> > > >      GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, 
> > > >      GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync
> > > >  OpenGL vendor string: Intel Open Source Technology Center
> > > > -OpenGL renderer string: Mesa DRI Intel(R) 915GM x86/MMX/SSE2
> > > > -OpenGL version string: 1.4 Mesa 9.1.6
> > > > +OpenGL renderer string: Mesa DRI Intel(R) 852GM/855GM x86/MMX/SSE2
> > > > +OpenGL version string: 1.3 Mesa 9.2.4
> > > >  OpenGL extensions:
> > > >      GL_3DFX_texture_compression_FXT1, 
> > > > GL_ANGLE_texture_compression_dxt3, 
> > > >      GL_ANGLE_texture_compression_dxt5, GL_APPLE_object_purgeable, 
> > > >      GL_APPLE_packed_pixels, GL_APPLE_vertex_array_object, 
> > > > -    GL_ARB_ES2_compatibility, GL_ARB_copy_buffer, GL_ARB_debug_output, 
> > > > -    GL_ARB_depth_texture, GL_ARB_draw_buffers, 
> > > > +     GL_ARB_copy_buffer, GL_ARB_debug_output, 
> > > > +     GL_ARB_draw_buffers, 
> > > >      GL_ARB_draw_elements_base_vertex, GL_ARB_explicit_attrib_location, 
> > > > -    GL_ARB_fragment_program, GL_ARB_fragment_shader, 
> > > >      GL_ARB_framebuffer_object, GL_ARB_get_program_binary, 
> > > >      GL_ARB_half_float_pixel, GL_ARB_internalformat_query, 
> > > >      GL_ARB_invalidate_subdata, GL_ARB_map_buffer_range,
> > > > GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_pixel_buffer_object,
> > > > GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_provoking_vertex,
> > > > GL_ARB_robustness, GL_ARB_sampler_objects, GL_ARB_shader_objects, 
> > > > -    GL_ARB_shading_language_100, GL_ARB_shadow, GL_ARB_sync, 
> > > > +    GL_ARB_shading_language_100,  GL_ARB_sync, 
> > > >      GL_ARB_texture_border_clamp, GL_ARB_texture_compression, 
> > > >      GL_ARB_texture_cube_map, GL_ARB_texture_env_add, 
> > > >      GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
> > > >      GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat, 
> > > > -    GL_ARB_texture_non_power_of_two, GL_ARB_texture_rectangle, 
> > > > +     GL_ARB_texture_rectangle, 
> > > >      GL_ARB_texture_storage, GL_ARB_transpose_matrix, 
> > > >      GL_ARB_vertex_array_object, GL_ARB_vertex_buffer_object, 
> > > >      GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_window_pos, 
> > > >      GL_ATI_blend_equation_separate, GL_ATI_draw_buffers, 
> > > > -    GL_ATI_separate_stencil, GL_ATI_texture_env_combine3, GL_EXT_abgr, 
> > > > +     GL_EXT_abgr, 
> > > >      GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_equation_separate, 
> > > >      GL_EXT_blend_func_separate, GL_EXT_blend_minmax,
> > > > GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, 
> > > > GL_EXT_copy_texture, 
> > > >      GL_EXT_draw_range_elements, GL_EXT_fog_coord,
> > > > GL_EXT_framebuffer_blit, 
> > > > -    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_object, 
> > > > +     GL_EXT_framebuffer_object, 
> > > >      GL_EXT_gpu_program_parameters, GL_EXT_multi_draw_arrays, 
> > > >      GL_EXT_packed_depth_stencil, GL_EXT_packed_pixels, 
> > > >      GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
> > > >      GL_EXT_polygon_offset, GL_EXT_provoking_vertex,
> > > > GL_EXT_rescale_normal, GL_EXT_secondary_color,
> > > > GL_EXT_separate_shader_objects, 
> > > > -    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, 
> > > > -    GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, 
> > > > +    GL_EXT_separate_specular_color, 
> > > > +     GL_EXT_stencil_wrap, GL_EXT_subtexture, 
> > > >      GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_compression_dxt1, 
> > > >      GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp, 
> > > >      GL_EXT_texture_env_add, GL_EXT_texture_env_combine, 
> > > > @@ -84,7 +83,7 @@ OpenGL extensions:
> > > >      GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate, 
> > > >      GL_MESA_pack_invert, GL_MESA_window_pos, GL_MESA_ycbcr_texture, 
> > > >      GL_NV_blend_square, GL_NV_light_max_exponent,
> > > > GL_NV_packed_depth_stencil, 
> > > > -    GL_NV_texgen_reflection, GL_NV_texture_env_combine4, 
> > > > +    GL_NV_texgen_reflection, 
> > > >      GL_NV_texture_rectangle, GL_OES_EGL_image, GL_OES_read_format, 
> > > >      GL_S3_s3tc, GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp, 
> > > >      GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod,
> > > > GL_SUN_multi_draw_arrays

------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to