Android Open Source - fun-gl Texture






From Project

Back to project page fun-gl.

License

The source code is released under:

Apache License

If you think the Android project fun-gl listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.jcxavier.android.opengl.engine.texture;
/*from   w  ww .ja v a2 s .co  m*/
import static android.opengl.GLES20.*;

/**
 * Created on 12/03/2014.
 *
 * @author Joo Xavier <jcxavier@jcxavier.com>
 */
public class Texture {

    private final int mName;
    private final int mWidth;
    private final int mHeight;
    private final boolean mPremultipliedAlpha;

    private TextureWrap mTextureWrap;
    private TextureFilteringMode mTextureFilteringMode;

    public Texture(final int name, final int width, final int height, final boolean premultipledAlpha) {
        mName = name;
        mWidth = width;
        mHeight = height;
        mPremultipliedAlpha = premultipledAlpha;

        // default texture parameters
        mTextureWrap = TextureWrap.CLAMP_TO_EDGE;
        mTextureFilteringMode = TextureFilteringMode.LINEAR;
    }

    void configureTextureParameters() {
        int wrapTarget = mTextureWrap == TextureWrap.REPEAT ? GL_REPEAT : GL_CLAMP_TO_EDGE;
        int filterTarget = mTextureFilteringMode == TextureFilteringMode.LINEAR ? GL_LINEAR : GL_NEAREST;

        glBindTexture(GL_TEXTURE_2D, mName);

        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapTarget);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapTarget);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, filterTarget);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, filterTarget);
    }

    public void setTextureFilteringMode(final TextureFilteringMode textureFilteringMode) {
        mTextureFilteringMode = textureFilteringMode;
        configureTextureParameters();
    }

    public void setTextureWrap(final TextureWrap textureWrap) {
        mTextureWrap = textureWrap;
        configureTextureParameters();
    }

    public int getName() {
        return mName;
    }

    public int getWidth() {
        return mWidth;
    }

    public int getHeight() {
        return mHeight;
    }

    public boolean hasPremultipliedAlpha() {
        return mPremultipliedAlpha;
    }

    @Override
    public String toString() {
        return "Texture{" +
                "name=" + mName +
                ", width=" + mWidth +
                ", height=" + mHeight +
                ", premultipliedAlpha=" + mPremultipliedAlpha +
                ", textureWrap=" + mTextureWrap +
                ", textureFilteringMode=" + mTextureFilteringMode +
                '}';
    }
}




Java Source Code List

com.jcxavier.android.opengl.engine.BitmapConfigHelper.java
com.jcxavier.android.opengl.engine.EngineActivity.java
com.jcxavier.android.opengl.engine.EngineRenderer.java
com.jcxavier.android.opengl.engine.EngineView.java
com.jcxavier.android.opengl.engine.RendererOptions.java
com.jcxavier.android.opengl.engine.cache.GLState.java
com.jcxavier.android.opengl.engine.gdx.GdxEglConfigChooser.java
com.jcxavier.android.opengl.engine.shader.ColorShader.java
com.jcxavier.android.opengl.engine.shader.ShaderManager.java
com.jcxavier.android.opengl.engine.shader.Shader.java
com.jcxavier.android.opengl.engine.shader.TextureShader.java
com.jcxavier.android.opengl.engine.texture.TextureFilteringMode.java
com.jcxavier.android.opengl.engine.texture.TextureManager.java
com.jcxavier.android.opengl.engine.texture.TextureWrap.java
com.jcxavier.android.opengl.engine.texture.Texture.java
com.jcxavier.android.opengl.engine.type.RotationMode.java
com.jcxavier.android.opengl.file.FileManager.java
com.jcxavier.android.opengl.game.GameStage.java
com.jcxavier.android.opengl.game.SimpleGameStage.java
com.jcxavier.android.opengl.game.camera.Camera.java
com.jcxavier.android.opengl.game.camera.DefaultCamera.java
com.jcxavier.android.opengl.game.camera.OrthographicCamera.java
com.jcxavier.android.opengl.game.manager.GameManager.java
com.jcxavier.android.opengl.game.manager.ScreenManager.java
com.jcxavier.android.opengl.game.manager.input.InputHandler.java
com.jcxavier.android.opengl.game.manager.input.InputManager.java
com.jcxavier.android.opengl.game.object.DrawableObject.java
com.jcxavier.android.opengl.game.object.GameObject.java
com.jcxavier.android.opengl.game.object.Sprite.java
com.jcxavier.android.opengl.game.type.Resizeable.java
com.jcxavier.android.opengl.game.type.Touchable.java
com.jcxavier.android.opengl.game.type.Transformable.java
com.jcxavier.android.opengl.game.type.Updateable.java
com.jcxavier.android.opengl.math.IVector.java
com.jcxavier.android.opengl.math.Matrix4.java
com.jcxavier.android.opengl.math.Vector2.java
com.jcxavier.android.opengl.math.Vector3.java
com.jcxavier.android.opengl.math.Vector4.java
com.jcxavier.android.opengl.sample.GameActivity.java
com.jcxavier.android.opengl.sample.TestStage.java
com.jcxavier.android.opengl.util.BitmapUtils.java
com.jcxavier.android.opengl.util.Constants.java
com.jcxavier.android.opengl.util.ReflectionUtils.java
com.jcxavier.android.opengl.util.WeakList.java
com.sample.clean.TestActivity.java
com.sample.clean.TestStage.java