List of usage examples for android.opengl GLUtils texImage2D
public static void texImage2D(int target, int level, Bitmap bitmap, int border)
From source file:Main.java
public static void initTexture(Resources res, BitmapFactory.Options opts, int resource, int handle) { Bitmap bmp = BitmapFactory.decodeResource(res, resource, opts); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, handle); GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bmp, 0); GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR_MIPMAP_LINEAR); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR); bmp.recycle();//from ww w. j a v a 2 s. c o m }
From source file:Main.java
public static int setTexture(Bitmap bitmap) { GLES20.glGenTextures(1, texturenames, 0); GLES20.glActiveTexture(GLES20.GL_TEXTURE0); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, texturenames[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); GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0); bitmap.recycle();/*from w w w .j a v a 2 s . co m*/ return texturenames[0]; }
From source file:Main.java
public static int loadTexture(String s) { Bitmap img;//from ww w .j ava 2s .c o m try { img = BitmapFactory.decodeStream(context.getAssets().open(s)); } catch (IOException e) { return 0; } int tex[] = new int[1]; GLES20.glGenTextures(1, tex, 0); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, tex[0]); GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, img, 0); GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D); GLES20.glTexParameteri(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_LINEAR_MIPMAP_LINEAR); GLES20.glTexParameteri(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR); GLES20.glTexParameteri(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S, GL10.GL_CLAMP_TO_EDGE); GLES20.glTexParameteri(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T, GL10.GL_CLAMP_TO_EDGE); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, 0); img.recycle(); return tex[0]; }
From source file:Main.java
public static int loadTexture(String s) { Bitmap img;/* w w w. j ava 2 s . com*/ try { img = BitmapFactory.decodeStream(context.getAssets().open(s)); } catch (IOException e) { return -1; } int tex[] = new int[1]; GLES20.glGenTextures(1, tex, 0); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, tex[0]); GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, img, 0); GLES20.glGenerateMipmap(GLES20.GL_TEXTURE_2D); GLES20.glTexParameteri(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_LINEAR_MIPMAP_LINEAR); GLES20.glTexParameteri(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR); GLES20.glTexParameteri(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S, GL10.GL_CLAMP_TO_EDGE); GLES20.glTexParameteri(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T, GL10.GL_CLAMP_TO_EDGE); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, 0); img.recycle(); return tex[0]; }
From source file:Main.java
public static int loadTextureFromResource(Context context, int resId) { final int textureHandle[] = new int[1]; GLES20.glGenTextures(1, textureHandle, 0); if (textureHandle[0] != 0) { final BitmapFactory.Options op = new BitmapFactory.Options(); op.inScaled = false;//from w w w . j a va2 s. co m final Bitmap bmp = BitmapFactory.decodeResource(context.getResources(), resId, op); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textureHandle[0]); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_NEAREST); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_NEAREST); GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bmp, 0); } else { throw new RuntimeException("Error Loading Texture"); } return textureHandle[0]; }
From source file:Main.java
public static void loadTexture(final Context context, int resId, GL10 gl, int[] textures) { Bitmap bmp = BitmapFactory.decodeResource(context.getResources(), resId); gl.glGenTextures(1, textures, 0);/*from www. j a v a 2 s . c o m*/ gl.glBindTexture(GLES20.GL_TEXTURE_2D, textures[0]); GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_NEAREST); GLES20.glTexParameterf(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_REPEAT); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_REPEAT); GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bmp, 0); bmp.recycle(); }
From source file:Main.java
public static int loadTexture(final Context context, final int resourceId) { final int[] textureHandle = new int[1]; GLES20.glGenTextures(1, textureHandle, 0); if (textureHandle[0] != 0) { final BitmapFactory.Options options = new BitmapFactory.Options(); options.inScaled = false; // No pre-scaling // Read in the resource final Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), resourceId, options); // Bind to the texture in OpenGL GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textureHandle[0]); // Set filtering GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_NEAREST); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_NEAREST); // Load the bitmap into the bound texture. GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0); // Recycle the bitmap, since its data has been loaded into OpenGL. bitmap.recycle();//from ww w.ja va 2s .c o m } if (textureHandle[0] == 0) { throw new RuntimeException("Error loading texture."); } return textureHandle[0]; }
From source file:Main.java
/** * Loads the texture with the given id.//from w w w. jav a 2 s .c o m * * @param context the application's context * @param resourceId the id of the texture * @return the texture handle */ public static int loadTexture(final Context context, final int resourceId) { final int[] textureHandle = new int[1]; if (!cachedTextureHandles.containsKey(resourceId)) { GLES20.glGenTextures(1, textureHandle, 0); if (textureHandle[0] != 0) { final BitmapFactory.Options options = new BitmapFactory.Options(); options.inScaled = false; // Pre scaling off final Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), resourceId); GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textureHandle[0]); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_REPEAT); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_REPEAT); GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0); bitmap.recycle(); if (textureHandle[0] == 0) { throw new RuntimeException("Error loading texture."); } cachedTextureHandles.put(resourceId, textureHandle[0]); } } return cachedTextureHandles.get(resourceId); }
From source file:Main.java
/** * Loads a bitmap into memory then discards the bitmap. * @param bitmap// w w w .j ava2s . c om * @param oldHandle Handle to use. * @return */ public static int loadBitmap(Bitmap bitmap, int oldHandle, boolean recycle) { int h; int handle[] = new int[1]; GLES20.glGenTextures(1, handle, 0); h = handle[0]; // // if(oldHandle <= 0) { // int handle[] = new int[1]; // GLES20.glGenTextures(1, handle, 0); // h = handle[0]; // } else { // h = oldHandle; // } GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, h); GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_NEAREST); 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_CLAMP_TO_EDGE); GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_CLAMP_TO_EDGE); GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0); if (recycle) bitmap.recycle(); return h; }
From source file:Main.java
protected static int bindTexture(Bitmap bitmap) { int[] textures = new int[1]; glGenTextures(1, textures, 0);/*from www. j ava 2s . c o m*/ glBindTexture(GL_TEXTURE_2D, textures[0]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR); GLUtils.texImage2D(GL_TEXTURE_2D, 0, bitmap, 0); glGenerateMipmap(GL_TEXTURE_2D); glBindTexture(GL_TEXTURE_2D, 0); return textures[0]; }