iPad: OpenGL ES 1 or 2?

Discussion in 'Public Game Developers Forum' started by theatrus, Feb 4, 2010.

  1. theatrus

    theatrus New Member

    Feb 4, 2010
    4
    0
    0
    I am looking at creating an iPad-only turn-based game. I generally prefer the workflow using shaders (not complicated, just "tweaked" fixed function), but I haven't explored the relative performance differences on the iPhone hardware as I don't own a 3GS, only a 3G.

    From a performance point of view, are there any major differences between the fixed function pipeline and the shader pipeline (using simple shaders similar to fixed function) on the 3GS/Touch? Would I be making a mistake targeting OpenGl ES 2? The models I use are generally very simple (100 triangles top), rarely multi textured.

    I have done work using OpenGL ES 1.1 (on the iPhone) and OpenGL 2.1 (desktop).

    And as the first post to touch arcade, hi! :) Long timer lurker, first time poster.
     
  2. Venan

    Venan Well-Known Member

    Jan 13, 2010
    174
    0
    0
    The hardware on the iPad is different, as far as I can tell there is only speculation about what is on there.

    With the work we did with GL ES for NBA Live, I'd say you don't have anything to worry about. The performance is fine, especially since you can omit stages in your shader that the fixed function pipeline has. In addition, the FFP on the 3GS is emulated through shaders, so it definitely won't be worse, unless you write really inefficient shaders :)

    If that is all you are targeting, then shaders is the way to go.
     
  3. theatrus

    theatrus New Member

    Feb 4, 2010
    4
    0
    0
    Shaders it is then - thanks for the help :)

    It does make sense that the ES 1.1 pipeline would be implemented using shaders on 2.0 class hardware, which does remove quite a bit of concern.

    Are there any changes to the efficiency of draw calls on the 3GS class hardware? The 3G has a definite upper bound.
     
  4. Venan

    Venan Well-Known Member

    Jan 13, 2010
    174
    0
    0
    We haven't done specific testing or benchmarks, but the same rule holds (as with any hardware), the fewer calls/state changes, the better. No matter what you're drawing, if you can draw it with fewer calls, it will be faster :)

    There was, however, a HUGE difference in performance with buffer objects on the 3GS versus the first gen. I don't remember all the details exactly, but I'm pretty sure it worked best when you drew everything from one buffer object and then everything from the other and to only use dynamic VBOs when you absolutely have to. The performance boost was significant once they were working properly.
     

Share This Page