IPad vertex data performance

This topic contains 0 replies, has 1 voice, and was last updated by  beeps 7 years ago.

Viewing 1 post (of 1 total)
  • Author
  • #30396


    I am wondering if anyone can provide some references to the “geometric” performance of the ipad.

    I have been running a couple of simple tests in which I am passing just the vertex and normal to the gpu and have very little code in the vertex and fragment programs:

    attribute vec4 vertices;

    attribute vec4 normals;

    uniform mat4 ModelViewProjMatrix;

    varying vec3 normal;

    void main(void)


        gl_Position = ModelViewProjMatrix * vertices;

        normal = normals.xyz;


    precision highp float;

    varying vec3 normal;

    varying vec3 v;

    void main(void)


        gl_FragColor.rgb = normal;

        gl_FragColor.a = 1.0;


    I am finding that for both interleaved and non interleaved vertex and normal data I am seeing the following frames per second (roughly) in instruments:

    18 fps – 100,000 vertices and normals

    18 fps – 75,000

    19 fps – 60,000

    22 fps – 55,000

    25 fps – 50,000

    25 fps – 45,000

    60 fps – 40,000

    When I reduce my shader to just use the vertex and to output a solid color (no normal) I find that I get similiar performance.

    32 fps – 100,000 vertices

    23 fps – 110,000 vertices

    18 fps – 120,000 vertices

    All of my vertices and normals are stored in vbos as floats. I am drawing with indexed triangle strips which are not in vbos (just yet).

    I am wondering if anyone has run similiar tests and has ideas on whether I am hitting a memory limit or whether I should invest some time in moving my indexed strips into vbos or avoid using indices and duplicating the data to improve memory access?

    Thanks in advance for any feedback.

Viewing 1 post (of 1 total)
You must be logged in to reply to this topic.