I'm interested in how I can optimally implement a particle system on OpenGL ES 2.0.
I'm using a texture atlas to encompass all the images and I was wondering which is better:
* Use a single texture bind for the atlas texture and render all particles as triangles using the atlas information to send the UVs to the shader?
* Create 'glTexSubImage2D's for all atlas images and bind for each particle whilst rendering using GL_POINTS?
I'm unsure what the cost is to continuously bind using glTexSubImage2D knowing the parent texture isn't changing. Can someone please help me to understand what is going on under the hood?
Also, I'm not 100% if the glTexSubImage2D function happy deals with dimensions that are not powers of 2. I can't see anything on the ES 2.0 reference.