public static int initTexture(int drawableId, Resources resources) {
int[] textures = new int[1]
GLES20.glGenTextures(1, textures, 0)
int textureId = textures[0]
GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textureId)
GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR)
GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR)
GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_REPEAT)
GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_REPEAT)
InputStream is = resources.openRawResource(drawableId)
Bitmap bitmapTmp
try {
bitmapTmp = BitmapFactory.decodeStream(is)
} finally {
try {
is.close()
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace()
}
}
GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmapTmp, 0)
bitmapTmp.recycle()
return textureId
}