[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Public WebGL] Proposing OpenGL ES extensions for inclusion into WebGL

Hi Florian, all,


There’s a comprehensive database of OpenGL ES devices at www.glbenchmark.com, including a list of supported GL extensions per device. There’s no query mechanism for the extensions, though, so I had to manually browse through the database to gauge the level of support for each extension.


The results were not encouraging. In fact, there’s not even a single extension that would be universally supported. I was keeping my thumbs up for OES_depth_texture, as it’s supported even by the low-end ARM Mali 200 and Vivante GC530, but then it turned out that the spanking new NVIDIA Tegra 3 doesn’t have it! Sigh.


That said, I don’t think WebGL should be limited to the absolute lowest common denominator. If a particular feature is not available on a low-end mobile device X, that shouldn’t mean that no-one will ever get to use that feature. We should leave it up to each individual developer to make that choice. There are a number of OES extensions that are supported widely enough that they ought to be exposed to WebGL, IMO.


Best regards,



From: owner-public_webgl@khronos.org [mailto:owner-public_webgl@khronos.org] On Behalf Of ext Florian Bösch
Sent: 3. tammikuuta 2012 1:56
To: public webgl
Subject: [Public WebGL] Proposing OpenGL ES extensions for inclusion into WebGL


I have identified a list of OpenGL ES extensions of interest for inclusion into WebGL. The idea is to alleviate the large WebGL vs. Desktop Graphics discrepancy by adding support for things that are already available or proposed for OpenGL ES



ES Ratified Extensions



  usecase: SSAO, Deferred rendering, DOF, etc.

  support: OpenGL  2.0 core


  usecase: more then 64k vertices for drawElements

  support: OpenGL 1.1 core


  usecase: color mapping, volume rendering, other effects requiring interpolated volume queries

  support: OpenGL 1.2 core


  usecase: odd-sized textures requring mipmapping and other repeat modes then clamp to edge

  support: OpenGL 2.0 core



Non Ratified Extensions



  usecase: shadow mapping

  support: OpenGL 2.0 core

  status: complete


  usecase: postprocessing mathematics, distance field merging, medical imaging

  support: OpenGL 1.2 core

  status: unspecified

  unresolved issues: 1, regarding FUNC prefix "Is this too ugly?"


  usecase: speedup of large scene rendering, virtual/mega texturing

  support:  OpenGL 1.5 core

  status: complete


  usecase: impostors, parallax mapping, raymarching

  support: GLSL 1.1

  status:  Draft

  unresolved issues: 0


 usecase: higher quality texture filtering for oblique angles

 status: unspecified

 unresolved issues: 1, regarding 3D texture anisotropic filtering


 usecase: mix&match of shaders, easier uniform usage.

 support: GL_ARB_separate_shader_objects, OpenGL 4.1

 status: Complete


 usecase: precise control over texture lookup LOD factor in fragment shaders

 support: GL_ARB_shader_texture_lod, GLSL 1.3

 status: Draft

 unresolved issues: unspecified



Vendor Extensions



  usecase: deferred rendering, postprocessing, depth peeling, other multi output computations

  support: GL_ARB_framebuffer_object, OpenGL 3.0, GLSL 1.1

  status: Complete