OpenGL extensions available on different Android-devices

I asked this on StackOverflow, but as nobody seems to care, I’ll try here. At least there are some devs working with Android here. :slight_smile:

As you may know, Android has three ways of drawing sprites:

  • the basic way: using vertex arrays (slow)
  • using vertex-buffer-objects (VBOs) (faster)
  • using the draw_texture extension (fastest, but only for basic sprites, i.e. no transforming)

Vertex arrays are supported in OpenGL ES 1.0 and thus in every Android-device. I’m guessing most (if not all) of the current devices also support VBOs and draw_texture.

Instead of guessing, I’d like to know the extensions supported by different devices. If majority of devices support VBOs, I could simplify my code and focus only on VBOs + draw_texture.

It’d be helpful to know what different devices support, so if you have an Android-device, do report the extensions list please. :slight_smile:

String extensions = gl.glGetString(GL10.GL_EXTENSIONS);

You can reply to the StackOverflow question as well, if you have an account there. It’s right here.


Here is the extensions list for [b]HTC Hero[/b] (Android 1.5) (all three techniques are supported):
  • GL_ARB_texture_env_combine
  • GL_ARB_texture_env_crossbar
  • GL_ARB_texture_env_dot3
  • GL_ARB_texture_mirrored_repeat
  • GL_ARB_vertex_buffer_object
  • GL_ATI_extended_texture_coordinate_data_formats
  • GL_ATI_imageon_misc
  • GL_ATI_texture_compression_atitc
  • GL_EXT_blend_equation_separate
  • GL_EXT_blend_func_separate
  • GL_EXT_blend_minmax
  • GL_EXT_blend_subtract
  • GL_EXT_stencil_wrap
  • GL_OES_byte_coordinates
  • GL_OES_compressed_paletted_texture
  • GL_OES_draw_texture
  • GL_OES_fixed_point
  • GL_OES_matrix_palette
  • GL_OES_point_size_array
  • GL_OES_point_sprite
  • GL_OES_read_format
  • GL_OES_single_precision
  • GL_OES_vertex_buffer_object
  • GL_QUALCOMM_vertex_buffer_object
  • GL_QUALCOMM_direct_texture