gpt4 book ai didi

android - 免费的 GLUtils.texImage2D

转载 作者:行者123 更新时间:2023-11-29 21:48:06 26 4
gpt4 key购买 nike

来源是这样的:

 public static int loadTexture ( Bitmap bitmap )
{
//long time1 = System.currentTimeMillis();
int[] textureId = new int[1];

GLES20.glGenTextures ( 1, textureId, 0 );
GLES20.glBindTexture ( GLES20.GL_TEXTURE_2D, textureId[0] );

GLES20.glTexParameteri ( GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR );
GLES20.glTexParameteri ( GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR );
GLES20.glTexParameteri ( GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_CLAMP_TO_EDGE );
GLES20.glTexParameteri ( GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_CLAMP_TO_EDGE );

GLES20.glEnable(GLES20.GL_BLEND);
GLES20.glBlendFunc(GLES20.GL_ONE, GLES20.GL_ONE_MINUS_SRC_ALPHA);

try{
GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0);
}
catch(Exception ex)
{
ex.printStackTrace();
}

return textureId[0];
}

我想通过 GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0) 方法回收位图并释放内存,请帮我怎么做?

最佳答案

要从 OpenGL 中删除纹理,请使用:

GLES20.glDeleteTextures(1, textureId, 0);

要释放位图本身,使用:

bitmap.recycle();

将位图加载到 OpenGL 后,您可以回收位图。

关于android - 免费的 GLUtils.texImage2D,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15195938/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com