OpenGL on Android 4.2

44 views
Skip to first unread message

Tiến Nguyễn

unread,
Dec 5, 2012, 5:12:19 PM12/5/12
to it...@googlegroups.com
Has anyone have problem with texture mapping on Android 4.2? I have this sample code that works fine up to Android 4.1.2 but broken at 4.2.
This is part of the book sample code from here: http://www.apress.com/9781430240020 (Chapter 5)
Any input would be greatly appreciated.

====

    public void draw(GL10 gl)

    { 

    gl.glVertexPointer(2, GL10.GL_FLOAT, 0, mFVertexBuffer);

    gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);

    gl.glColorPointer(4, GL10.GL_UNSIGNED_BYTE, 0, mColorBuffer);

    gl.glEnableClientState(GL10.GL_COLOR_ARRAY);

        

    gl.glEnable(GL10.GL_TEXTURE_2D); //1

    gl.glEnable(GL10.GL_BLEND); //2

         

    gl.glBlendFunc(GL10.GL_ONE, GL10.GL_SRC_COLOR); //3

    gl.glBindTexture(GL10.GL_TEXTURE_2D, textures[0]); //4 

        

    gl.glTexCoordPointer(2, GL10.GL_FLOAT,0, mTextureBuffer); //5

    gl.glEnableClientState(GL10.GL_TEXTURE_COORD_ARRAY); //6


    gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP, 0, 4); //7

        

    gl.glDisableClientState(GL10.GL_COLOR_ARRAY);

        gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);

        gl.glDisableClientState(GL10.GL_TEXTURE_COORD_ARRAY); //8

    }


    private int[] textures = new int[1];

    

    public int createTexture(GL10 gl, Context contextRegf, int resource) 

    {

    Bitmap tempImage = BitmapFactory.decodeResource(contextRegf.getResources(), resource); // 1


    gl.glGenTextures(1, textures, 0); // 2

    gl.glBindTexture(GL10.GL_TEXTURE_2D, textures[0]); // 3


    GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, tempImage, 0); // 4

    

    gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_LINEAR); // 5a

    gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR); // 5b


    tempImage.recycle();//6


    return resource;

    }

=====

Reply all
Reply to author
Forward
0 new messages