List of usage examples for javax.microedition.khronos.opengles GL10 GL_TEXTURE_2D
int GL_TEXTURE_2D
To view the source code for javax.microedition.khronos.opengles GL10 GL_TEXTURE_2D.
Click Source Link
From source file:Main.java
public static int loadTexture(String s) { Bitmap img;/*from w w w . j a v a 2 s. 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 a va2 s . co m*/ 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
/** * non-premultiplied alpha version of GLUtils.texImage2D(). Note: this method is Slow and should only be used when really necessary! * * @param gl/*from ww w .jav a 2 s .com*/ * @param bitmap * @see GLUtils.texImage2D() */ public static void texImage2DNonPremultipliedAlpha(final GL10 gl, final Bitmap bitmap) { final int[] pixels = extractPixels(bitmap); final byte[] pixelComponents = new byte[pixels.length * 4]; int byteIndex = 0, p; for (int i = 0; i < pixels.length; i++) { p = pixels[i]; // Convert to byte representation RGBA required by gl.glTexImage2D. pixelComponents[byteIndex++] = (byte) ((p >> 16) & 0xFF); // red pixelComponents[byteIndex++] = (byte) ((p >> 8) & 0xFF); // pixelComponents[byteIndex++] = (byte) ((p) & 0xFF); // blue pixelComponents[byteIndex++] = (byte) (p >> 24); // alpha } gl.glTexImage2D(GL10.GL_TEXTURE_2D, 0, GL10.GL_RGBA, bitmap.getWidth(), bitmap.getHeight(), 0, GL10.GL_RGBA, GL10.GL_UNSIGNED_BYTE, ByteBuffer.wrap(pixelComponents)); }
From source file:eu.sathra.SathraActivity.java
@SuppressLint("WrongCall") @Override/*from ww w . j a va2 s.c o m*/ public void onDrawFrame(GL10 gl) { gl.glViewport(0, 0, this.getScreenWidth(), this.getScreenHeight()); // Update time variables mTimeDelta = System.currentTimeMillis() - mLastDrawTimestamp; mLastDrawTimestamp = System.currentTimeMillis(); mTime += mTimeDelta; mVirtualTimeDelta = (long) (mTimeDelta * getTimeScale()); mVirtualTime += mVirtualTimeDelta; // Setup defaults gl.glBindTexture(GL10.GL_TEXTURE_2D, 0); GLES20.glBindFramebuffer(GLES20.GL_FRAMEBUFFER, 0); // Clear BG float r = (float) Color.red(mParams.bgColor) / 255; float g = (float) Color.green(mParams.bgColor) / 255; float b = (float) Color.blue(mParams.bgColor) / 255; float a = (float) Color.alpha(mParams.bgColor) / 255; gl.glClearColor(r, g, b, a); gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT); gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA); GLES20.glBlendEquation(GLES20.GL_FUNC_ADD); gl.glMatrixMode(GL10.GL_TEXTURE); gl.glLoadIdentity(); gl.glMatrixMode(GL10.GL_MODELVIEW); gl.glLoadIdentity(); // gl.glEnable(GL10.GL_BLEND); gl.glBlendFunc(GL10.GL_ONE, GL10.GL_ONE_MINUS_SRC_ALPHA); mRootNode.onDraw(gl, mVirtualTime, mVirtualTimeDelta); // Draw lights and shadows gl.glMatrixMode(GL10.GL_TEXTURE); gl.glLoadIdentity(); gl.glScalef(1, -1, 1); // Frame Buffers are upside down gl.glMatrixMode(GL10.GL_MODELVIEW); CameraNode activeCam = CameraNode.getActiveCamera(); if (activeCam != null) { shad.setPosition(0, 0);// this.getResolutionWidth()/2, // this.getResolutionHeight()/2);//activeCam.getAbsoluteX(), // activeCam.getAbsoluteY()); } gl.glBlendFunc(GL10.GL_DST_COLOR, GL10.GL_ONE_MINUS_SRC_ALPHA); shad.draw(gl); gl.glViewport(0, 0, this.getResolutionWidth(), this.getResolutionHeight()); // SDfDSFSDFS GLES20.glBindFramebuffer(GLES20.GL_FRAMEBUFFER, buf[0]); GLES20.glFramebufferTexture2D(GLES20.GL_FRAMEBUFFER, GLES20.GL_COLOR_ATTACHMENT0, GLES20.GL_TEXTURE_2D, tex[0], 0); // Clear shadow r = (float) Color.red(mParams.ambientColor) / 255; g = (float) Color.green(mParams.ambientColor) / 255; b = (float) Color.blue(mParams.ambientColor) / 255; a = (float) Color.alpha(mParams.ambientColor) / 255; gl.glClearColor(r, g, b, a); GLES20.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT); // TODO: CONCURENT MOD EXCEPTION try { Dyn4jPhysics.getInstance().getWorld().updatev(mVirtualTimeDelta * MILISECONDS_TO_SECONDS); } catch (ConcurrentModificationException e) { } // if (mIsRunning) onUpdate(mVirtualTime, mVirtualTimeDelta); // Update fps counter mFPS = 1000f / mTimeDelta; // mDebugView.postInvalidate(); // System.gc(); }