Destrovi4 icon

GLTextureTest

Destrovi4 | PRO | 12/17/12 09:44:36 PM UTC | 0 ⭐ | 875 👁️ | Never ⏰ | []
Java |

1.53 KB

|

None

|

0 👍

/

0 👎

package destr.jogl.main;
 
import java.io.IOException;
 
import javax.media.opengl.GL;
import javax.media.opengl.GL2;
import javax.media.opengl.GLAutoDrawable;
 
import destr.jogl.buffer.GLTexture;
import destr.jogl.game2d.Game2DCanvas;
 
public class GLTextureTest extends Game2DCanvas {
    private static final long serialVersionUID = 8150675879674601735L;
    private GLTexture texture;
    
    public GLTextureTest(int width, int height) {
        super(width, height);
    }
    
    @Override
    public void init(GLAutoDrawable drawable){
        super.init(drawable);
        try {
            texture = GLTexture.loadClassPath(drawable.getGL(), "/jogl/util/data/av/test-ntsc01-160x90.png");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
 
    @Override
    public void display(GLAutoDrawable drawable) {
    }
    
    @Override
    public void reshape(GLAutoDrawable drawable, int x, int y, int width, int height) {
        super.reshape(drawable, x, y, width, height);
        
        GL gl = drawable.getGL();
        GL2 gl2 = gl.getGL2();
        gl2.glClear(GL2.GL_COLOR_BUFFER_BIT);
        gl2.glLoadIdentity();
        gl2.glTranslatef(-1f, 1f, 0);
        gl2.glScalef(2.0f, -2.0f, 0f);
        
        if(texture != null) texture.bind(gl2);
        gl2.glBegin(GL2.GL_QUADS);
            gl2.glTexCoord2f(0, 0);
            gl2.glVertex3f(0.0f, 0.0f, 0.0f);
            
            gl2.glTexCoord2f(1, 0);
            gl2.glVertex3f(1.0f, 0.0f, 0.0f);
            
            gl2.glTexCoord2f(1, 1);
            gl2.glVertex3f(1.0f, 1.0f, 0.0f);
            
            gl2.glTexCoord2f(0, 1);
            gl2.glVertex3f(0.0f, 1.0f, 0.0f);
        gl2.glEnd();
    }
 
}

Comments