I’m wondering how metal is different from es2,since that I did not see any fps increase when I package with metal enabled(tested with iphone 6 plus)and there are not much effects difference.And I have found that the effects in es2 preview in editor is quite different from ios devices(IPhone 6 plus),the bloom is much stronger,many effects cannot be shown on mobile devices such as distortion etc.
Thanks!
Yeah i would like to know how this works also. And i would also like to know how we can enable deffered lighting on iPhone 6
Hi!
So Metal API and ES2 are basically the same in that they communicate between your program and the GPU, converting your commands into rendered objects, the difference being Metal API is specifically engineered to push A7+ Devices to their limits, whereas ES2 and OpenGL as a whole are meant to be cross-platform with little to no modifications to the code.
Specifically in your case, the FPS is the same because you are probably not pushing the device to a point where he speed of Metal is enough to matter, but if you were to add a couple million more triangles, your FPS would be much better on Metal because rendering each triangle on OpenGL just takes longer. In the case of the effects and bloom, Metal is still young, and there are a lot of things it has yet to implement, which OpenGL has, but I’d expect it to catch up by iOS 10. All in all, if your effects are worth it to you, your game doesn’t seem very resource demanding, so the tiny bit slower OpenGL and the miniscule improvement in battery consumption Metal would provide doesn’t seem to justify you using it, and I’d turn it off until you actually see a difference in performance, if ever, in which case I’d reevaluate its usefulness.
Thanks!