- culling mindenhol
- compressed textures (max 1024) .pkm (ETC1)
- shaderekben csínján bánni a sin,cos, stb math-al, ezt inkább CPU-val végeztetni
- shaderekben kevés sampler használat, texture2D
- shaderekben nem támogatja minden (a legtöbb) gpu a ciklusokat, ezért ezt kerüljük el
- lowp, mediump, és highp
- kevesebb TRI használat nagyobb textúráknál és FBO-nál okozhat nagyobb FPS-t
- FBO méretcsökkentése felére legalább egy 1200as device-en. (Quality.MEDIUM), ennél kisebb már csúnyán néz ki
- közelebb nyilván kevesebb lesz az FPS :) ezért ne nagyon zoomoljunk kamerával nagyon rá semmire
- kerüljük a discard használatát, performance hit
- shadow stb realtime, nem túl szép és szintén performance hit
- általában a bake-elt dolgok a jók, tehát árnyék, fény, de van ahol kell számított fény
++
-
Draw opaque objects first.
-
Next draw objects that require alpha testing (or in an OpenGL ES 2.0 based application, objects that require the use of
discardin the fragment shader). Note that these operations have a performance penalty, as described in “Avoid Alpha Test and Discard.” -
Finally, draw alpha-blended objects.
++
teszt adatok:
Test device: Galaxy Note2, android 4.1+
FBO-val MEDIUM Q.-val custom shaderrel (animációk, )
- 22-27 fps 6430 tris
FBO nélkül
- 31-50 fps 6430 tris
nyilván az objektumok közelségétől/sokaságától, valamint a shaderekben lévő textúrák számától/fényektől és alkalmazásuktól is számít
plusz nyilván ez egy nem agyonoptimalizált kód, Rajawali framework