Example usage for com.badlogic.gdx.graphics GL10 GL_PROJECTION

List of usage examples for com.badlogic.gdx.graphics GL10 GL_PROJECTION

Introduction

In this page you can find the example usage for com.badlogic.gdx.graphics GL10 GL_PROJECTION.

Prototype

int GL_PROJECTION

To view the source code for com.badlogic.gdx.graphics GL10 GL_PROJECTION.

Click Source Link

Usage

From source file:com.badlogic.gdx.tests.lw.WaterRipplesLW.java

License:Apache License

@Override
public void render() {
    GL10 gl = Gdx.graphics.getGL10();/*from   ww w  .jav a 2  s.  c  om*/
    gl.glViewport(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

    camera.update();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glLoadMatrixf(camera.combined.val, 0);
    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glLoadIdentity();

    accum += Gdx.graphics.getDeltaTime();
    while (accum > TICK) {
        //         for (int i = 0; i < 5; i++) {
        //            if (Gdx.input.isTouched(i)) {
        //               Ray ray = camera.getPickRay(Gdx.input.getX(i), Gdx.input.getY(i));
        //               Intersector.intersectRayPlane(ray, plane, point);
        //               touchWater(point);
        //            }
        //         }

        updateWater();
        float[][] tmp = curr;
        curr = last;
        last = tmp;
        accum -= TICK;
    }

    float alpha = accum / TICK;
    interpolateWater(alpha);

    updateVertices(intp);

    gl.glEnable(GL10.GL_TEXTURE_2D);
    texture.bind();
    mesh.render(GL10.GL_TRIANGLES);

    batch.begin();
    // batch.drawText(font, "fps: " + Gdx.graphics.getFramesPerSecond(), 10, 20, Color.WHITE);
    batch.end();
}

From source file:com.badlogic.gdx.tests.Water.java

@Override
public void render() {
    GL10 gl = Gdx.graphics.getGL10();//from w  ww  . j  av  a 2  s .c om

    if (gl == null) {
        return;
    }

    gl.glViewport(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

    camera.update();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glLoadMatrixf(camera.getCombinedMatrix().val, 0);
    gl.glMatrixMode(GL10.GL_MODELVIEW);

    accum += Gdx.graphics.getDeltaTime();
    while (accum > TICK) {
        for (int i = 0; i < 5; i++) {
            if (Gdx.input.isTouched(i)) {
                Ray ray = camera.getPickRay(Gdx.input.getX(i),
                        (int) (Gdx.input.getY(i) / (float) Gdx.graphics.getHeight() * Gdx.graphics.getWidth()));
                Intersector.intersectRayPlane(ray, plane, point);
                touchWater(point);
            }
        }

        updateWater();
        float[][] tmp = curr;
        curr = last;
        last = tmp;
        accum -= TICK;
    }

    float alpha = accum / TICK;
    interpolateWater(alpha);

    updateVertices(intp);

    gl.glEnable(GL10.GL_TEXTURE_2D);
    texture.bind();
    mesh.render(GL10.GL_TRIANGLES);

    batch.begin();
    //batch.drawText(font, "fps: " + Gdx.graphics.getFramesPerSecond(), 10, 20, Color.WHITE);
    batch.end();
}

From source file:com.badlogic.gdx.tests.WaterRipples.java

License:Apache License

@Override
public void render() {
    GL10 gl = Gdx.graphics.getGL10();/*www. ja v  a  2 s . c o m*/
    gl.glViewport(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

    camera.update();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glLoadMatrixf(camera.combined.val, 0);
    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glLoadIdentity();

    accum += Gdx.graphics.getDeltaTime();
    while (accum > TICK) {
        for (int i = 0; i < 5; i++) {
            if (Gdx.input.isTouched(i)) {
                Ray ray = camera.getPickRay(Gdx.input.getX(i), Gdx.input.getY(i));
                Intersector.intersectRayPlane(ray, plane, point);
                touchWater(point);
            }
        }

        updateWater();
        float[][] tmp = curr;
        curr = last;
        last = tmp;
        accum -= TICK;
    }

    float alpha = accum / TICK;
    interpolateWater(alpha);

    updateVertices(intp);

    gl.glEnable(GL10.GL_TEXTURE_2D);
    texture.bind();
    mesh.render(GL10.GL_TRIANGLES);

    batch.begin();
    // batch.drawText(font, "fps: " + Gdx.graphics.getFramesPerSecond(), 10, 20, Color.WHITE);
    batch.end();
}

From source file:com.balloongame.handlers.CustomSpriteBatch.java

License:Apache License

private void setupMatrices() {
    if (!Gdx.graphics.isGL20Available()) {
        GL10 gl = Gdx.gl10;//from w  w w.  ja v a  2 s . com
        gl.glMatrixMode(GL10.GL_PROJECTION);
        gl.glLoadMatrixf(projectionMatrix.val, 0);
        gl.glMatrixMode(GL10.GL_MODELVIEW);
        gl.glLoadMatrixf(transformMatrix.val, 0);
    } else {
        combinedMatrix.set(projectionMatrix).mul(transformMatrix);
        if (customShader != null) {
            customShader.setUniformMatrix("u_projTrans", combinedMatrix);
            customShader.setUniformi("u_texture", 0);
        } else {
            shader.setUniformMatrix("u_projTrans", combinedMatrix);
            shader.setUniformi("u_texture", 0);
        }
    }
}

From source file:com.digitale.mygdxgame.SplashRenderer.java

License:Open Source License

private void setStaticProjectionAndCamera(Graphics graphics, Application app, GL10 gl) {
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glLoadIdentity();/* ww  w  .j  av  a 2s.  c om*/
    //x=left-right, y=up-down, z=back-forward
    camera.far = 1000000;
    camera.position.set(0, 7f + 0, 9f + 0);
    //camera.direction.set(0, 0, -4f).sub(camera.position).nor();
    camera.fieldOfView = 67;
    float orbitRadius = (new Vector3(0, 0, 0).dst(camera.position));
    camera.position.set(new Vector3(0, 0, 0));

    camera.rotate(Splash.cameraHorizAngle, 0, 1, 0);
    Vector3 orbitReturnVector = new Vector3(0, 0, 0);
    orbitReturnVector.set(camera.direction.tmp().mul(-orbitRadius));
    camera.translate(orbitReturnVector.x, orbitReturnVector.y, orbitReturnVector.z);
    camera.update();
    camera.apply(gl);

    orbitRadius = (new Vector3(0, 0, 0)).dst(camera.position);
    camera.position.set(new Vector3(0, 0, 0));
    camera.rotate(Splash.cameraVertAngle, 1, 0, 0);
    orbitReturnVector = new Vector3(0, 0, 0);
    orbitReturnVector.set(camera.direction.tmp().mul(-orbitRadius));
    camera.translate(orbitReturnVector.x, orbitReturnVector.y, orbitReturnVector.z);
    camera.update();
    camera.apply(gl);
    gl.glMatrixMode(GL10.GL_MODELVIEW);
    Splash.cameraHorizAngle = 0;
    Splash.cameraVertAngle = 0;
}

From source file:com.eightbitmage.lwtemplate.WaterRipplesLW.java

License:Apache License

@Override
public void render() {
    GL10 gl = Gdx.graphics.getGL10();//from   w  ww.jav a 2 s.  c o  m
    gl.glViewport(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

    camera.update();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glLoadMatrixf(camera.combined.val, 0);
    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glLoadIdentity();

    accum += Gdx.graphics.getDeltaTime();
    while (accum > TICK) {
        updateWater();
        float[][] tmp = curr;
        curr = last;
        last = tmp;
        accum -= TICK;
    }

    float alpha = accum / TICK;
    interpolateWater(alpha);

    updateVertices(intp);

    gl.glEnable(GL10.GL_TEXTURE_2D);
    texture.bind();
    mesh.render(GL10.GL_TRIANGLES);

    batch.begin();
    // batch.drawText(font, "fps: " + Gdx.graphics.getFramesPerSecond(), 10,
    // 20, Color.WHITE);
    batch.end();
}

From source file:org.interreg.docexplore.reader.book.BookEngineRenderer.java

License:Open Source License

public void render() {
    BookSpecification spec = engine.book;
    BookModel model = engine.model;//www . j a v  a2 s  . c  o  m

    GL10 gl = Gdx.gl10;

    cnt += .01;

    engine.attractor.attract(engine.camera, .075f);

    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glPushMatrix();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glPushMatrix();
    engine.camera.apply(gl);

    gl.glEnable(GL10.GL_LIGHTING);
    gl.glEnable(GL10.GL_LIGHT0);
    gl.glLightfv(GL10.GL_LIGHT0, GL10.GL_AMBIENT, ambient);
    gl.glLightfv(GL10.GL_LIGHT0, GL10.GL_DIFFUSE, diffuse);
    gl.glLightfv(GL10.GL_LIGHT0, GL10.GL_POSITION, position);

    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glTranslatef((float) engine.globalTrans, 0, 0);
    gl.glRotatef((float) (engine.globalRot * 180 / Math.PI), 0, 1, 0);

    boolean pageIsActive = engine.hand.pageIsActive;
    int leftPageIndex = model.leftStack.nStackPages > 0 ? 1 + 2 * (model.leftStack.nStackPages - 1) : -1;
    int rightPageIndex = model.rightStack.nStackPages > 0 ? leftPageIndex + 1 + (pageIsActive ? 2 : 0) : -1;

    Bindable leftPage = leftPageIndex >= 0 ? spec.pages.get(leftPageIndex).getTexture() : null;
    Bindable rightPage = rightPageIndex >= 0 ? spec.pages.get(rightPageIndex).getTexture() : null;
    Bindable pageFront = pageIsActive ? spec.pages.get(leftPageIndex + 1).getTexture() : null;
    Bindable pageBack = pageIsActive ? spec.pages.get(leftPageIndex + 2).getTexture() : null;

    Gdx.gl10.glEnable(GL10.GL_CULL_FACE);
    gl.glPolygonMode(GL10.GL_FRONT_AND_BACK, GL10.GL_FILL);

    boolean zoomed = engine.zoom.active;
    model.render(leftPage, rightPage, pageFront, pageBack, engine.book.coverTex, engine.book.innerCoverTex,
            zoomed ? null : leftRoiMask, zoomed ? null : rightRoiMask);

    for (Component extension : engine.components)
        extension.render();

    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glPopMatrix();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glPopMatrix();
}

From source file:org.interreg.docexplore.reader.book.ParchmentEngine.java

License:Open Source License

public void render() {
    if (book == null || !active)
        return;/*from  ww  w. j  a va  2  s .  co m*/

    GL10 gl = Gdx.gl10;

    cnt += .01;

    globalFrame.attract(camera, .075f);

    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glPushMatrix();
    gl.glLoadIdentity();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glPushMatrix();
    gl.glLoadIdentity();
    camera.apply(gl);

    Gdx.gl10.glEnable(GL10.GL_TEXTURE_2D);
    Gdx.gl10.glDisable(GL10.GL_CULL_FACE);
    Gdx.gl10.glDisable(GL10.GL_LIGHTING);
    gl.glPolygonMode(GL10.GL_FRONT_AND_BACK, GL10.GL_FILL);

    int page = (int) (-camera.position.y * book.aspectRatio);
    int p0 = Math.max(0, page - pageSpread), p1 = Math.min(book.pages.size() - 1, page + pageSpread);
    for (int i = p0; i <= p1; i++) {
        book.pages.get(i).getTexture().bind();
        GfxUtils.fillQuad(-.5f, -(float) (i / book.aspectRatio), 0, 0, .5f,
                -(float) ((i + 1) / book.aspectRatio), 1, 1);
    }

    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glPopMatrix();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glPopMatrix();
}

From source file:org.interreg.docexplore.reader.book.roi.ROIOverlay.java

License:Open Source License

public void render() {
    if (alpha < alphaGoal)
        alpha += .02f;/* w w w  . j ava2  s .  c o m*/
    else if (alpha > alphaGoal)
        alpha -= .02f;
    alpha = alpha < 0 ? 0 : alpha > 1 ? 1 : alpha;
    if (alpha == 0)
        return;
    GL10 gl = Gdx.gl10;

    gl.glDisable(GL10.GL_LIGHTING);
    gl.glDisable(GL10.GL_DEPTH_TEST);
    gl.glDisable(GL10.GL_CULL_FACE);

    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glPushMatrix();
    gl.glLoadIdentity();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glPushMatrix();
    gl.glLoadIdentity();
    gl.glOrthof(-1, 1, -1, 1, -1, 1);

    gl.glDisable(GL10.GL_TEXTURE_2D);
    gl.glColor4f(0, 0, 0, .75f * alpha);
    doQuad(-2 * offsetMargin, 1, 1, -1);

    float y0 = 0;
    gl.glEnable(GL10.GL_TEXTURE_2D);

    gl.glColor4f(1, 1, 1, alpha);
    for (OverlayElement element : elements) {
        float w = elementWidth(element);
        float h = elementHeight(w, element);
        if (element.bind()) {
            doQuad(-offsetMargin + .5f - .5f * w, 1 - y0 + offset, -offsetMargin + .5f + .5f * w,
                    1 - y0 - h + offset);
            y0 += h + vmargin * element.marginFactor();
        }
    }

    if (offset > 0) {
        up.bind();
        gl.glColor4f(1, 1, 1, .5f * alpha);
        float bw = .05f;
        doQuad(1 - bw, 1, 1, 1 - (bw * Gdx.graphics.getWidth() / Gdx.graphics.getHeight()));
    }
    if (offset < maxOffset) {
        down.bind();
        gl.glColor4f(1, 1, 1, .5f * alpha);
        float bw = .05f;
        doQuad(1 - bw, (bw * Gdx.graphics.getWidth() / Gdx.graphics.getHeight()) - 1, 1, -1);
    }

    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glPopMatrix();
    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glPopMatrix();

    gl.glEnable(GL10.GL_DEPTH_TEST);
    gl.glDisable(GL10.GL_TEXTURE_2D);
}

From source file:org.interreg.docexplore.reader.DebugGraphics.java

License:Open Source License

public void render() {
    gl.glDisable(GL10.GL_LIGHTING);/*from  w  ww.jav  a  2s .c  o m*/
    gl.glDisable(GL10.GL_TEXTURE_2D);
    gl.glDisable(GL10.GL_CULL_FACE);
    gl.glDisable(GL10.GL_DEPTH_TEST);

    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glPushMatrix();
    gl.glLoadIdentity();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glPushMatrix();
    gl.glLoadIdentity();
    gl.glOrthof(0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight(), 0, -1, 1);

    for (Graphics.Renderable listener : listeners)
        try {
            listener.render(this);
        } catch (Throwable e) {
            e.printStackTrace();
        }

    gl.glEnable(GL10.GL_TEXTURE_2D);
    synchronized (overlays) {
        for (Map.Entry<BufferedImage, ImageOverlay> entry : overlays.entrySet()) {
            ImageOverlay overlay = entry.getValue();
            if (overlay.tex == null)
                overlay.tex = new Texture(entry.getKey(), false);
            gl.glColor4f(overlay.r, overlay.g, overlay.b, overlay.a);
            overlay.tex.bind();
            GfxUtils.fillQuad((float) overlay.x, (float) overlay.y, 0, 0, (float) (overlay.x + overlay.w),
                    (float) (overlay.y + overlay.h), 1, 1);
        }
    }
    gl.glColor4f(1, 1, 1, 1);

    gl.glMatrixMode(GL10.GL_MODELVIEW);
    gl.glPopMatrix();
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glPopMatrix();

    gl.glEnable(GL10.GL_CULL_FACE);
    gl.glEnable(GL10.GL_DEPTH_TEST);
    gl.glDisable(GL10.GL_TEXTURE_2D);
}