1 package jp.sfjp.gokigen.a01c.liveview.glview
3 import android.content.Context
4 import android.graphics.Bitmap
5 import android.graphics.BitmapFactory
6 import android.opengl.GLUtils
7 import java.io.IOException
8 import java.io.InputStream
9 import javax.microedition.khronos.opengles.GL10
11 class GokigenGLUtilities(private val mContext: Context)
19 fun prepareTexture(gl: GL10?, resourceId: Int): Int
24 * Create our texture. This has to be done each time the
27 val textures = IntArray(1)
28 gl?.glGenTextures(1, textures, 0)
29 gl?.glBindTexture(GL10.GL_TEXTURE_2D, textures[0])
30 gl?.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_NEAREST.toFloat())
31 gl?.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR.toFloat())
32 gl?.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S, GL10.GL_CLAMP_TO_EDGE.toFloat())
33 gl?.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T, GL10.GL_CLAMP_TO_EDGE.toFloat())
34 gl?.glTexEnvf(GL10.GL_TEXTURE_ENV, GL10.GL_TEXTURE_ENV_MODE, GL10.GL_REPLACE.toFloat())
36 /////////////////////////////////////////////////////////////////////
37 val inputStream: InputStream = mContext.resources.openRawResource(resourceId)
41 BitmapFactory.decodeStream(inputStream)
49 catch (e: IOException)
56 GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, bitmap, 0)