Subversion Repositories AndroidProjects

Rev

Rev 43 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package com.gebauz.framework.util;

import javax.microedition.khronos.opengles.GL10;

public class RenderTextureBasic extends RenderTexture
{
       
        protected RenderTextureBasic()
        {
               
        }
       
        @Override
        public void recreate()
        {
                createTarget(width, height);
        }

        @Override
        public void createTarget(int w, int h)
        {
                createTexture();
                bind();
               
                width = w;
                height = h;
               
                GL10 gl = GLUtil.getGL();              
       
                gl.glTexImage2D(GL10.GL_TEXTURE_2D, 0, GL10.GL_RGBA, w, h, 0, GL10.GL_RGBA, GL10.GL_UNSIGNED_BYTE, null);
               
                gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_NEAREST);
                gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_NEAREST);
               
                gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S, GL10.GL_REPEAT);
        gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T, GL10.GL_REPEAT);

                //setFiltering(Filter.NEAREST, Filter.NEAREST);
       
        unbind();
        }
       
        @Override
        public void activate()
        {
                // TODO: set viewport only
               
        }
       
        @Override
        public void deactivate()
        {
                bind();
               
                GL10 gl = GLUtil.getGL();
                gl.glCopyTexSubImage2D(GL10.GL_TEXTURE_2D, 0, 0, 0, 0, 0, width, height);
        }
}