Target Universal = FPS DISASTER

If I switch from armv6 to a Universal build my frame rate drops by more than half!
Whats the deal here - what is it actually changing and why the frame rate issues?

Do I need to do a build for Universal armv6/7 to cover all iOS Devices for any reason or can I just do an armv6 build as it runs fine (and smooth) on all devices?

thanks

arm6 should be fine.

Also, try setting USE_OPENGLES20_IF_AVAILABLE to 0 in AppController.mm in Xcode.

When you build universal, we use OpenGL ES 2.0 on the platforms that support it. Then depending what shaders you use, and what rendering path is set in player settings, many objects can be much more expensive to render (but they have better lighting etc.).

There’s several ways to bring back “OpenGL ES 1.1-like simple shaders”:

  1. use the simple shaders :slight_smile: E.g. something like VertexLit, or even simpler ones.
  2. set rendering path to VertexLit in player settings.
  3. set USE_OPENGLES20_IF_AVAILABLE to zero in AppController.mm, which will force always using OpenGL ES 1.1

Thanks, but
1/2) set rendering path is missing from the iOS settings tab - an omission? (this is better than changing every shader)
3) Could this be a setting in Unity? (the less playing around in Xcode the better!)

Also perhaps a warning or something should show if OpenGL 2 and non-vertexLit path are used to avoid other people wasting their time dealing with [very] poor performance?