Hi Piyush,for point 1, as you have discovered, if OpenGL-ES considers the texture "incomplete" it will instead render black texels. In this case, the glTexParameteri() mode for GL_TEXTURE_MIN_FILTER has probably been left on its default of GL_NEAREST_MIPMAP_LINEAR - in which case OpenGL-ES will consider the texture incomplete unless you load *all* mipmap levels, or generate them automatically using the glGenerateMipmap() call as you have done.Hope this clarifies what was happening. Cheers, Pete