@@ -57,13 +57,36 @@ import java.nio.ByteOrder
5757import javax.microedition.khronos.opengles.GL10
5858
5959
60- object UtilityIcons {
60+ object UtilityTexture {
6161
62- var TAG : String = " joshuatee UtilityIcons "
62+ var TAG : String = " joshuatee UtilityTexture "
6363
64- var unloadTextures: Boolean = false ;
64+ // var unloadTextures: Boolean = false;
6565
6666
67+ fun loadimage (gl : GL10 , imagefile : String ): Int {
68+ val options = BitmapFactory .Options ()
69+ options.inScaled = false
70+ options.inPreferredConfig = Bitmap .Config .ARGB_8888
71+ val textures = IntArray (1 )
72+ gl.glEnable(GL10 .GL_TEXTURE_2D )
73+ gl.glEnableClientState(GL10 .GL_VERTEX_ARRAY )
74+ gl.glEnableClientState(GL10 .GL_TEXTURE_COORD_ARRAY )
75+ gl.glGenTextures(1 , textures, 0 )
76+ gl.glPixelStorei(GL10 .GL_UNPACK_ALIGNMENT , 1 )
77+ gl.glBindTexture(GL10 .GL_TEXTURE_2D , textures[0 ])
78+ gl.glTexParameterf(GL10 .GL_TEXTURE_2D , GL10 .GL_TEXTURE_MAG_FILTER , GL10 .GL_NEAREST .toFloat())
79+ gl.glTexParameterf(GL10 .GL_TEXTURE_2D , GL10 .GL_TEXTURE_MIN_FILTER , GL10 .GL_NEAREST .toFloat())
80+ gl.glTexParameterf(GL10 .GL_TEXTURE_2D , GL10 .GL_TEXTURE_WRAP_S , GL10 .GL_CLAMP_TO_EDGE .toFloat())
81+ gl.glTexParameterf(GL10 .GL_TEXTURE_2D , GL10 .GL_TEXTURE_WRAP_T , GL10 .GL_CLAMP_TO_EDGE .toFloat())
82+ val bitmap = BitmapFactory .decodeFile(imagefile, options)
83+ GLUtils .texImage2D(GL10 .GL_TEXTURE_2D , 0 , bitmap, 0 )
84+ return textures[0 ]
85+ }
86+
87+
88+ /*
89+
6790 fun sample() {
6891 var bitmap: Bitmap = Bitmap.createBitmap(128, 128, Bitmap.Config.ARGB_8888);
6992 var canvas: Canvas = Canvas(bitmap)
@@ -281,19 +304,6 @@ object UtilityIcons {
281304
282305 }
283306
284- /*
285- fun createTexture(bitmap: Bitmap): Int {
286- val texture = createTexture(bitmap)
287- GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, texture)
288- GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0)
289- GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR)
290- GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR)
291- //GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_CLAMP_TO_EDGE)
292- //GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_CLAMP_TO_EDGE)
293- Log.i(TAG, "texImage2D")
294- return texture
295- }
296- */
297307
298308
299309
@@ -369,5 +379,5 @@ object UtilityIcons {
369379 }
370380 }
371381
372-
382+ */
373383}
0 commit comments