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

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

Introduction

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

Prototype

public void glScalef(float x, float y, float z);

Source Link

Usage

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

License:Open Source License

private void renderActors(GL10 gl) {

    for (int i = 0; i < Stardust3d.actorsList.size(); i++) {
        try {/*from w  w  w.j  av a  2 s  .  c o m*/
            Actor actor = Stardust3d.actorsList.get(i);

            if (actor != null && !(actor.shipname.equals("dead")) && actor.getHitpoints() > 0
                    && actor.getStatus() == 1) {
                // only do for ships in space

                if (actor.getStatus() == 1 && actor.position.dst(Ship.position) < 5000) {
                    if ((actor.visible)) {
                        gl.glPushMatrix();
                        gl.glTranslatef(actor.position.x, actor.position.y, actor.position.z);

                        gl.glScalef(1, 1, 1);
                        String actorName = (actor.get_firstname() + actor.get_surname());

                        if (actorName.equals("Hive AIShield Disruptor")) {

                            gl.glRotatef(actor.yawangle, 0, 1, 0);
                            gl.glRotatef(actor.pitchangle, 1, 0, 0);
                            gl.glRotatef(invaderAngle, 0, 0, 1);
                            shieldDisruptorTexture.bind();
                            shieldDisruptorMesh.render(GL10.GL_TRIANGLES);

                            gl.glEnable(GL10.GL_BLEND);
                            gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE);
                            gl.glScalef(.5f, .5f, .5f);
                            gl.glDisable(GL10.GL_CULL_FACE);
                            gl.glDisable(GL10.GL_LIGHTING);
                            gl.glColor4f(.0f, 1f, 0f, 1);

                            swirlyTexture.bind();
                            // gl.glRotatef(-(invaderAngle * 20), 0, 0, 1);
                            coneMesh.render(GL10.GL_TRIANGLES);
                            gl.glColor4f(1f, 1f, 1f, 1f);
                            gl.glDisable(GL10.GL_BLEND);
                            gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE);
                            gl.glEnable(GL10.GL_LIGHTING);
                            gl.glEnable(GL10.GL_CULL_FACE);
                        } else if (actorName.equals("Hive AIScout")) {

                            gl.glRotatef(actor.yawangle, 0, 1, 0);
                            gl.glRotatef(actor.pitchangle, 1, 0, 0);
                            jetTexture.bind();
                            gl.glScalef(1f, 1f, 1f);
                            shieldDisruptorMesh.render(GL10.GL_TRIANGLES);
                            gl.glScalef(20f, 20f, 20f);
                            gl.glDisable(GL10.GL_CULL_FACE);
                            gl.glEnable(GL10.GL_BLEND);
                            gl.glDisable(GL10.GL_LIGHTING);
                            gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE);
                            gl.glColor4f(.0f, .5f, 1f, 1);
                            gl.glRotatef(-actor.yawangle, 0, 1, 0);
                            gl.glRotatef(-actor.pitchangle, 1, 0, 0);
                            swansongTexture.bind();

                            looking = Util.lookAt(Simulation.camera, actor.position);
                            gl.glRotatef(looking.y, 0, 1, 0);
                            gl.glRotatef(-looking.x, 1, 0, 0);

                            sunMesh.render(GL10.GL_TRIANGLES);
                            gl.glColor4f(1f, 1f, 1f, 1f);
                            gl.glDisable(GL10.GL_BLEND);
                            // gl.glBlendFunc(GL10.GL_SRC_ALPHA,
                            // GL10.GL_ONE);
                            gl.glEnable(GL10.GL_LIGHTING);
                            gl.glEnable(GL10.GL_CULL_FACE);

                        } else {
                            renderActorShip(gl, actor, actor.shipname);
                        }
                        gl.glPopMatrix();
                    }
                }
            }
        } catch (IndexOutOfBoundsException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
}

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

License:Open Source License

private void renderShots(GL10 gl, ArrayList<Shot> shots) {
    gl.glColor4f(1, 1, 0, 1);/*from  w w w .  jav a2s .  c o  m*/
    gl.glEnable(GL10.GL_BLEND);
    gl.glDisable(GL10.GL_CULL_FACE);
    gl.glDisable(GL10.GL_LIGHTING);
    gl.glBlendFunc(GL10.GL_ONE, GL10.GL_ONE);
    jetTexture.bind();
    for (int i = 0; i < shots.size(); i++) {
        Shot shot = shots.get(i);
        gl.glPushMatrix();

        gl.glTranslatef(shot.position.x, shot.position.y, shot.position.z);
        gl.glRotatef(shot.yawAngle, 0, 1, 0);
        gl.glRotatef(shot.pitchAngle, 1, 0, 0);
        gl.glScalef(3 + (float) (shot.shotLife) * 1f, (float) (3 + shot.shotLife) * 1f,
                (float) (3 + shot.shotLife) * 1f);
        jetMesh.render(GL10.GL_TRIANGLES);
        gl.glPopMatrix();
    }
    gl.glColor4f(1, 1, 1, 1);
    gl.glEnable(GL10.GL_CULL_FACE);
    gl.glDisable(GL10.GL_BLEND);
    gl.glEnable(GL10.GL_LIGHTING);
}

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

License:Open Source License

private void renderMissiles(GL10 gl, ArrayList<Missile> missiles) {
    gl.glColor4f(1, 0, 0, 1);//from  w  w  w  . ja  v  a  2  s. c om
    gl.glEnable(GL10.GL_BLEND);
    gl.glDisable(GL10.GL_CULL_FACE);
    gl.glDisable(GL10.GL_LIGHTING);
    gl.glBlendFunc(GL10.GL_ONE, GL10.GL_ONE);
    jetTexture.bind();
    for (int i = 0; i < missiles.size(); i++) {
        Missile missile = missiles.get(i);
        gl.glPushMatrix();

        gl.glTranslatef(missile.position.x, missile.position.y, missile.position.z);
        gl.glRotatef(missile.yawAngle, 0, 1, 0);
        gl.glRotatef(missile.pitchAngle, 1, 0, 0);
        gl.glScalef(10f, 10f, 10f);
        jetMesh.render(GL10.GL_TRIANGLES);
        gl.glPopMatrix();
    }
    gl.glColor4f(1, 1, 1, 1);
    gl.glEnable(GL10.GL_CULL_FACE);
    gl.glDisable(GL10.GL_BLEND);
    gl.glEnable(GL10.GL_LIGHTING);
}

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

License:Open Source License

private void renderDusts(GL10 gl, ArrayList<Dust> dusts) {

    gl.glEnable(GL10.GL_BLEND);//from  w  w  w. j  a  v  a2  s  .co m
    // gl.glDisable(GL10.GL_CULL_FACE);
    gl.glDisable(GL10.GL_LIGHTING);
    gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA);

    dustTexture.bind();
    for (int i = 0; i < dusts.size(); i++) {
        Dust dust = dusts.get(i);
        if (camera.frustum.pointInFrustum(dust.position)) {
            gl.glPushMatrix();
            gl.glColor4f(dust.colour, dust.colour, dust.colour, 1);
            gl.glTranslatef(dust.position.x, dust.position.y, dust.position.z);
            gl.glRotatef(dust.yawAngle + 180, 0, 1, 0);
            gl.glRotatef(dust.pitchAngle, 1, 0, 0);
            gl.glScalef(dust.size, dust.size, dust.size);
            sunMesh.render(GL10.GL_TRIANGLES);
            gl.glPopMatrix();
        }
    }
    gl.glColor4f(1, 1, 1, 1);
    gl.glEnable(GL10.GL_CULL_FACE);
    gl.glDisable(GL10.GL_BLEND);
    gl.glEnable(GL10.GL_LIGHTING);
}

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

License:Open Source License

@SuppressWarnings("unused")
private void renderTrails(GL10 gl, ArrayList<Trail> trails) {
    gl.glColor4f(0, 1, 1, 1);/*w w w .j  av a  2s  .c  om*/
    jetTexture.bind();
    gl.glEnable(GL10.GL_BLEND);
    gl.glDisable(GL10.GL_CULL_FACE);
    gl.glDisable(GL10.GL_LIGHTING);
    gl.glBlendFunc(GL10.GL_ONE, GL10.GL_ONE);
    jetTexture.bind();
    for (int i = 0; i < trails.size(); i++) {
        Trail trail = trails.get(i);
        gl.glPushMatrix();
        gl.glRotatef(trail.yawAngle, 0, 1, 0);
        gl.glRotatef(trail.pitchAngle, 1, 0, 0);
        gl.glTranslatef(trail.position.x, trail.position.y, trail.position.z);

        float scale = (Trail.TRAIL_LIFE - trail.life) / 4;
        gl.glScalef(scale, scale, scale * 2.5f);
        jetMesh.render(GL10.GL_TRIANGLES);
        gl.glPopMatrix();
    }
    gl.glColor4f(1, 1, 1, 1);
    gl.glEnable(GL10.GL_CULL_FACE);
    gl.glDisable(GL10.GL_BLEND);
    gl.glEnable(GL10.GL_LIGHTING);
}

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

License:Open Source License

private void renderExplosions(GL10 gl, ArrayList<Explosion> explosions) {
    gl.glDisable(GL10.GL_CULL_FACE);/*from  w w  w. j  av a2s.com*/
    gl.glEnable(GL10.GL_BLEND);
    // gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA);
    gl.glDisable(GL10.GL_LIGHTING);
    for (int i = 0; i < explosions.size(); i++) {
        Explosion explosion = explosions.get(i);
        gl.glPushMatrix();
        if (explosion.type == Explosion.NORMAL) {
            gl.glTranslatef(explosion.position.x, explosion.position.y, explosion.position.z);
            explosionTexture.bind();
            gl.glScalef(10, 10, 10);
            gl.glRotatef(explosion.yawAngle, 0, 1, 0);
            gl.glRotatef(explosion.pitchAngle, 1, 0, 0);
            explosionMesh.render(GL10.GL_TRIANGLE_FAN,
                    (int) ((explosion.aliveTime / explosion.explosionLiveTime) * 15) * 4, 4);

        } else if (explosion.type == Explosion.SWANSONG) {
            gl.glTranslatef(explosion.position.x, explosion.position.y, explosion.position.z);
            swansongTexture.bind();
            gl.glColor4f(1 - (explosion.aliveTime / 2), 1 - (explosion.aliveTime / 2),
                    1 - (explosion.aliveTime / 2), 1 - (explosion.aliveTime / 2));
            gl.glRotatef(explosion.yawAngle, 0, 1, 0);
            gl.glRotatef(explosion.pitchAngle, 1, 0, 0);
            gl.glScalef(explosion.scale * 10, explosion.scale * 10, explosion.scale * 10);
            sunMesh.render(GL10.GL_TRIANGLES);
            gl.glScalef(1, 1, 1);
            gl.glColor4f(1f, 1f, 1f, 1f);
        } else if (explosion.type == Explosion.RANKUP) {
            gl.glTranslatef(explosion.position.x, explosion.position.y, explosion.position.z);
            lvlupTexture.bind();
            gl.glColor4f(1 - (explosion.aliveTime / 2), 1 - (explosion.aliveTime / 2),
                    1 - (explosion.aliveTime / 2), 1 - (explosion.aliveTime / 2));
            gl.glRotatef(explosion.yawAngle, 0, 1, 0);
            gl.glRotatef(explosion.pitchAngle, 1, 0, 0);
            gl.glRotatef(explosion.aliveTime * 360f, 0, 0, 1);
            gl.glScalef(explosion.scale, explosion.scale, explosion.scale);
            sunMesh.render(GL10.GL_TRIANGLES);
            gl.glScalef(1, 1, 1);
            gl.glColor4f(1f, 1f, 1f, 1f);

        } else if (explosion.type == Explosion.LEVELUP) {
            gl.glTranslatef(explosion.position.x, explosion.position.y, explosion.position.z);
            lvlupTexture.bind();
            gl.glColor4f(1 - (explosion.aliveTime / 4), .5f, //1 - (explosion.aliveTime / 2),
                    .5f - (explosion.aliveTime / 2), 1 - (explosion.aliveTime / 2));
            gl.glRotatef(explosion.yawAngle, 0, 1, 0);
            gl.glRotatef(explosion.pitchAngle, 1, 0, 0);
            gl.glRotatef(explosion.aliveTime * 360f, 0, 0, 1);
            gl.glScalef(explosion.scale, explosion.scale, explosion.scale);
            sunMesh.render(GL10.GL_TRIANGLES);
            gl.glScalef(1, 1, 1);
            gl.glColor4f(1f, 1f, 1f, 1f);
        }
        gl.glPopMatrix();
    }
    gl.glDisable(GL10.GL_BLEND);
    gl.glEnable(GL10.GL_CULL_FACE);
    gl.glEnable(GL10.GL_LIGHTING);
}

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

License:Open Source License

private void renderSky(GL10 gl) {

    gl.glDisable(GL10.GL_LIGHTING);/*from   w  ww. ja  v a  2s  .c om*/
    skyTexture.bind();
    gl.glColor4f(1, 1, 1, 1);

    gl.glPushMatrix();
    gl.glTranslatef(0, 0, 0);
    gl.glScalef(100f, 100f, 100f);
    skyMesh.render(GL10.GL_TRIANGLES);
    gl.glPopMatrix();
    gl.glEnable(GL10.GL_LIGHTING);
}

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

License:Open Source License

private void renderPlanet(GL10 gl, String texture, boolean uvtype, float radius, float x, float y, float z,
        Application app) {/*w w w .  ja v a  2 s.  c o m*/
    radius = radius * worldscale;

    if (texture.equals("earth")) {
        //render earth/jupiter  texture
        planetTexture.bind();
    } else if (texture.equals("sun")) {
        //render mars/sun  texture
        planetTexture.bind();
    }

    gl.glPushMatrix();
    //move away from origin
    gl.glTranslatef(x, y, z);
    //scale to 10% size of earth
    gl.glScalef(radius, radius, radius);
    gl.glRotatef((Splash.planetmove / 10) - 180, 0, 1, 0);
    if (uvtype == true) {
        //render lower planet texture
        planetMesh.render(GL10.GL_TRIANGLES);
    } else {
        //render upper planet texture
        planetMesh02.render(GL10.GL_TRIANGLES);
    }
    gl.glPopMatrix();

}

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

License:Open Source License

private void renderSun(GL10 gl, float radius, float x, float y, float z, Application app) {

    gl.glDisable(GL10.GL_LIGHTING);//from   www.  j ava2 s. co m
    radius = radius * worldscale;
    sunTexture.bind();
    gl.glPushMatrix();
    //move away from origin
    gl.glTranslatef(x, y, z);
    //scale to size of earth
    gl.glScalef(radius, radius, radius);
    gl.glDisable(GL10.GL_CULL_FACE);

    gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE);
    gl.glPushMatrix();
    gl.glDisable(GL10.GL_LIGHTING);
    //gl.glRotatef((Splash.planetmove/10), .25f, .75f, .5f);
    sunMesh.render(GL10.GL_TRIANGLES);
    gl.glPopMatrix();
    gl.glEnable(GL10.GL_LIGHTING);
    gl.glEnable(GL10.GL_CULL_FACE);
    gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA);

}

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

License:Open Source License

/**
* render ship jets/*www. j  a  v a 2  s  . c o m*/
* @param basescale :- scale factor for jet size before applying thrust
* @param length  :- scale factor for jet length, typically thrust value + random noise
* @param x The jet's x-coordinate.
* @param y The jet's  y-coordinate.
* @param z The jet's  z-coordinate.
* @return The product, in a vector <#, #, #, 1>, representing the
* rotated point.
*/
private void renderJet(GL10 gl, float baseScale, float length, float x, float y, float z, Application app) {
    jetTexture.bind();
    gl.glPushMatrix();
    //move away from origin
    gl.glTranslatef(x, y, z);
    //scale to size of earth
    gl.glScalef(baseScale, baseScale, baseScale * length);
    gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE);
    gl.glDisable(GL10.GL_LIGHTING);
    //gl.glRotatef((Splash.planetmove/10), .25f, .75f, .5f);
    jetMesh.render(GL10.GL_TRIANGLES);
    gl.glPopMatrix();
    gl.glEnable(GL10.GL_LIGHTING);
    //gl.glEnable(GL10.GL_DEPTH_TEST);
}