Results 1 to 2 of 2

Thread: It looks like modern Galaxy S2 does not support opengl es 2

  1. #1
    Junior Member
    Join Date
    Sep 2011
    Posts
    3

    It looks like modern Galaxy S2 does not support opengl es 2

    It looks like modern Galaxy S2 does not support opengl es 2
    Mali gpu compiler does not compile vertex shaders with texture lookup functions
    it gives next error - Function 'texture2D' not supported on target.

    But opengl es 2.0 specification says that - Texture lookup functions are available to both vertex and fragment shaders.

    I've post the same topic at http://forums.arm.com/index.php?/topic/ ... ification/

  2. #2
    Junior Member
    Join Date
    Sep 2011
    Posts
    3

    Re: It looks like modern Galaxy S2 does not support opengl e

    It support specification, i've got an answer from arm mali
    --------------------------------------------------------------
    The specification says that some number of texture units are available
    to vertex shaders. There is a query to get the number of vertex shader
    texture units which may be used.

    From the spec, v2.0.25, pp40;

    "Vertex shaders have the ability to do a lookup into a texture map, if
    supported by
    the GL implementation. The maximum number of texture image units
    available to
    a vertex shader is MAX_VERTEX_TEXTURE_IMAGE_UNITS; a maximum number of
    zero indicates that the GL implemenation [sic] does not support texture
    accesses in vertex
    shaders. The maximum number of texture image units available to the
    fragment
    stage of the GL is MAX_TEXTURE_IMAGE_UNITS. Both the vertex shader and
    fragment
    processing combined cannot use more than MAX_COMBINED_TEXTURE_-
    IMAGE_UNITS texture image units."

    If you query MAX_VERTEX_TEXTURE_IMAGE_UNITS, you will see that Mali
    targets return zero indicating texture units are not available for
    vertex shader programs.

    At a hardware level, this is because the vertex programs are run on a
    different part of the GPU core from the fragment shaders. The fragment
    shaders have access to 2D texture fetch units, but the vertex shader
    does not. This design compromise is common within non-unified GPU cores
    designed for high performance/low power consumption, including Mali 400
    series and also others available in the marketplace (and indeed also on
    previous generations of desktop OpenGL cards), and GLES hence allows
    texture units to only optionally be available to vertex shaders
    indicated by this query.

    If you could explain a little more about what you're trying to achieve,
    we may be able to assist you by suggesting an alternate method.

    Many thanks,
    ARM MPD Developer Relations

Similar Threads

  1. Does the opengl es need the GPU support?
    By essential in forum OpenGL ES general technical discussions
    Replies: 1
    Last Post: 11-02-2005, 02:13 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •