- Home /
Transparency issue on iOS
I have included a chicken wire fence in my app - a basic 4 quad mesh with a Mobile > Transparent > VertexLit shader. It seems to slow things down (I tried it with non-transparent and things were faster). I would like to use it transparent, so is there a chance I can speed things up by breaking the mesh into 4 separate quads, so that from inside the fence (where the camera will very often be) only 2 or 3 of the sides will be seen? Is it calculating alpha for the whole mesh or just the parts onscreen?
Answer by Jessy · Jul 28, 2011 at 01:35 PM
The vertices off-screen have to be processed, but not the pixels, so what you're suggesting should be useless. I think your only solution is going to be to run at non-native resolution if you have one of last year's underpowered models. All iOS devices from 2010 had GPUs with unacceptable fill rates.
Really? Oh, great. Thanks Apple! (And genuine thanks to you)
I tried using low rez, and still got the slowdown. Interestingly, after playing with a lot of different factors I got a big smooth boost from building for armv6 only.
The amv6 thing makes sense, because the shader in question is not written in GLSL, so runs faster under OpenGL ES 1.1 than 2.0. Is the framerate good at native resolution under GLES 1.1? If so, I was wrong, and it's not a fillrate issue; you just need a better shader.