Example usage for com.badlogic.gdx.graphics.glutils ShapeRenderer ShapeRenderer

List of usage examples for com.badlogic.gdx.graphics.glutils ShapeRenderer ShapeRenderer

Introduction

In this page you can find the example usage for com.badlogic.gdx.graphics.glutils ShapeRenderer ShapeRenderer.

Prototype

public ShapeRenderer() 

Source Link

Usage

From source file:com.paperscape.game.GameAssets.java

public static void loadAssets() {

    //how long the app will wait between screen in milliseconds. Is ran when the game changes a screen
    waitTimeForScreens = 200;/*  w ww  .  j a  v  a2 s. c  o  m*/
    //how long the game will wait in milliseconds. Used so the same touch doesn't retstart the game when the pause button is pressed
    waitTimeForPause = 100;
    //how long the game will wait in milliseconds. Helps Android by not playing music as soon as it is created
    timeForMusicToLoad = 100;

    //when called and initialised is set to the resolution of the screen, allows sprite batch to draw to screen
    camera = new OrthographicCamera();
    //the resolution of the game, currently 1080p HD as it will be scaled down for smaller screens
    screenResolutionX = 1920;
    screenResolutionY = 1080;
    //holds the position of a touch made on the screen
    touch = new Vector3();
    //the spritebatch used by Level, Menu etc. to draw objects to screen
    batch = new SpriteBatch();
    //used to check position of enemy waypoints
    shapeRenderer = new ShapeRenderer();

    //initialising paperBackgroundTexture object as walls_image file in menu folder
    paperBackgroundTexture = new Texture(Gdx.files.internal("paper-background.png"));
    //used for scaling
    paperBackgroundTexture.setFilter(Texture.TextureFilter.Linear, Texture.TextureFilter.Linear);
    //initialising a sprite which will hold the paperBackgroundTexture
    paperBackgroundSprite = new Sprite(paperBackgroundTexture);

    //-------------------------------------------------------------------------
    //the size of each individual sprite (i.e. 128 = 128x128 sprite image)
    frameSize = 128;
    //the position of each of the frames within a sprite sheet
    //0, 0 is the top left of the sprite sheet
    framePosition01X = 0;
    framePosition01Y = 0;
    framePosition02X = frameSize;
    framePosition02Y = 0;
    framePosition03X = (frameSize * 2);
    framePosition03Y = 0;
    framePosition04X = (frameSize * 3);
    framePosition04Y = 0;
    framePosition05X = 0;
    framePosition05Y = frameSize;
    framePosition06X = frameSize;
    framePosition06Y = frameSize;
    framePosition07X = (frameSize * 2);
    framePosition07Y = frameSize;
    framePosition08X = (frameSize * 3);
    framePosition08Y = frameSize;
    framePosition09X = 0;
    framePosition09Y = (frameSize * 2);
    framePosition10X = frameSize;
    framePosition10Y = (frameSize * 2);
    framePosition11X = (frameSize * 2);
    framePosition11Y = (frameSize * 2);
    framePosition12X = (frameSize * 3);
    framePosition12Y = (frameSize * 2);
    framePosition13X = 0;
    framePosition13Y = (frameSize * 3);
    framePosition14X = frameSize;
    framePosition14Y = (frameSize * 3);
    framePosition15X = (frameSize * 2);
    framePosition15Y = (frameSize * 3);
    framePosition16X = (frameSize * 3);
    framePosition16Y = (frameSize * 3);

    //initialising the first sprite sheet from an image in the 'assets' folder
    spriteSheet1 = new Texture(Gdx.files.internal("sprite_sheet_1.png"));
    //declaring each sprite, (what texture are they from, X-position, Y-position, X-size, Y-size);
    playerSprite = new Sprite(spriteSheet1, framePosition01X, framePosition01Y, frameSize, frameSize);
    enemySprite = new Sprite(spriteSheet1, framePosition02X, framePosition02Y, frameSize, frameSize);
    textBackgroundSprite = new Sprite(spriteSheet1, framePosition03X, framePosition03Y, frameSize, frameSize);
    pauseButtonSprite = new Sprite(spriteSheet1, framePosition04X, framePosition04Y, frameSize, frameSize);
    leftArrowSprite = new Sprite(spriteSheet1, framePosition05X, framePosition05Y, frameSize, frameSize);
    upArrowSprite = new Sprite(spriteSheet1, framePosition06X, framePosition06Y, frameSize, frameSize);
    leftArrowSpritePressed = new Sprite(spriteSheet1, framePosition07X, framePosition07Y, frameSize, frameSize);
    upArrowSpritePressed = new Sprite(spriteSheet1, framePosition08X, framePosition08Y, frameSize, frameSize);
    sightVerticalDownSprite = new Sprite(spriteSheet1, framePosition09X, framePosition09Y, frameSize,
            frameSize);
    sightHorisontalRightSprite = new Sprite(spriteSheet1, framePosition10X, framePosition10Y, frameSize,
            frameSize);
    levelButtonSprite = new Sprite(spriteSheet1, framePosition11X, framePosition11Y, frameSize, frameSize);
    lockedLevelSprite = new Sprite(spriteSheet1, framePosition12X, framePosition12Y, frameSize, frameSize);
    yellowButtonSprite = new Sprite(spriteSheet1, framePosition13X, framePosition13Y, frameSize, frameSize);
    creditsButtonSprite = new Sprite(spriteSheet1, framePosition14X, framePosition14Y, frameSize, frameSize);
    restartButtonSprite = new Sprite(spriteSheet1, framePosition15X, framePosition15Y, frameSize, frameSize);
    levelSelectMenuSprite = new Sprite(spriteSheet1, framePosition16X, framePosition16Y, frameSize, frameSize);

    //initialising a sprite for an enemy sight pointing up from the sprite for a sight facing down
    sightVerticalUpSprite = new Sprite(spriteSheet1, framePosition09X, framePosition09Y, frameSize, frameSize);
    //the sprite needs to be flipped vertically (boolean X, boolean Y)
    sightVerticalUpSprite.flip(false, true);
    //initialising a sprite for an enemy sight pointing left from the sprite for a sight facing right
    sightHorisontalLeftSprite = new Sprite(spriteSheet1, framePosition10X, framePosition10Y, frameSize,
            frameSize);
    //the sprite needs to be flipped horizontally (boolean X, boolean Y)
    sightHorisontalLeftSprite.flip(true, false);

    //sprite for the right arrow of GUI controls
    rightArrowSprite = new Sprite(spriteSheet1, framePosition05X, framePosition05Y, frameSize, frameSize);
    //needs to be flipped horizontally (boolean X, boolean Y)
    rightArrowSprite.flip(true, false);
    //sprite for when the right arrow of GUI controls is pressed
    rightArrowSpritePressed = new Sprite(spriteSheet1, framePosition07X, framePosition07Y, frameSize,
            frameSize);
    //needs to be flipped horizontally (boolean X, boolean Y)
    rightArrowSpritePressed.flip(true, false);

    //sprite for the down arrow of GUI controls
    downArrowSprite = new Sprite(spriteSheet1, framePosition06X, framePosition06Y, frameSize, frameSize);
    //needs to be flipped vertically (boolean X, boolean Y)
    downArrowSprite.flip(false, true);
    //sprite for when the down arrow of GUI controls is pressed
    downArrowSpritePressed = new Sprite(spriteSheet1, framePosition08X, framePosition08Y, frameSize, frameSize);
    //needs to be flipped vertically (boolean X, boolean Y)
    downArrowSpritePressed.flip(false, true);

    //locating the second sprite sheet
    spriteSheet2 = new Texture(Gdx.files.internal("sprite_sheet_2.png"));
    //declaring each sprite, (what texture are they from, X-position, Y-position, X-size, Y-size);
    soundOnSprite = new Sprite(spriteSheet2, framePosition01X, framePosition01Y, frameSize, frameSize);
    soundOffSprite = new Sprite(spriteSheet2, framePosition02X, framePosition02Y, frameSize, frameSize);
    pauseBackgroundSprite = new Sprite(spriteSheet2, framePosition03X, framePosition03Y, frameSize, frameSize);
    exitButtonSprite = new Sprite(spriteSheet2, framePosition04X, framePosition04Y, frameSize, frameSize);
    doorSprite = new Sprite(spriteSheet2, framePosition05X, framePosition05Y, frameSize, frameSize);
    backButtonSprite = new Sprite(spriteSheet2, framePosition06X, framePosition06Y, frameSize, frameSize);
    doorButtonSprite = new Sprite(spriteSheet2, framePosition07X, framePosition07Y, frameSize, frameSize);
    doorButtonActiveSprite = new Sprite(spriteSheet2, framePosition08X, framePosition08Y, frameSize, frameSize);
    wallSprite1 = new Sprite(spriteSheet2, framePosition09X, framePosition09Y, frameSize, frameSize);
    wallSprite2 = new Sprite(spriteSheet2, framePosition10X, framePosition10Y, frameSize, frameSize);
    wallSprite3 = new Sprite(spriteSheet2, framePosition11X, framePosition11Y, frameSize, frameSize);
    wallSprite4 = new Sprite(spriteSheet2, framePosition12X, framePosition12Y, frameSize, frameSize);
    wallSprite5 = new Sprite(spriteSheet2, framePosition13X, framePosition13Y, frameSize, frameSize);

    //-----------------------------------Screen-bounds-rectangles---------------------------------------
    //rectange shape for screen boundaries (X-position, Y-position, X-width, Y-height)
    screenBounds_left = new Rectangle(-10, 0, 10, 1080);
    screenBounds_right = new Rectangle(1915, 0, 10, 1080);
    screenBounds_top = new Rectangle(0, 1080, 1925, 10);
    screenBounds_bottom = new Rectangle(0, 290, 1925, 10);

    //-------------------------------------Setting-up-fonts---------------------------------------------
    fontRobotoRegular = new BitmapFont(Gdx.files.internal("fonts/roboto_regular_bitmap.fnt"), false);
    fontRobotoRegular.setColor(Color.BLACK);
    fontRobotoRegular.getData().setScale(1f);

    fontRobotoThinBold = new BitmapFont(Gdx.files.internal("fonts/roboto_thin_bold_bitmap.fnt"), false);
    fontRobotoThinBold.setColor(Color.BLACK);
    fontRobotoThinBold.getData().setScale(1f);

    //----------------------------------Strings-used-by-the-game----------------------------------------
    trackTitle = "<---";
    trackArtist = "Please";
    trackAlbum = "Select";
    license = "a";
    licenseLink = "Music";
    changesMade = "Track";

    //---------------------------------Preferences-for-user-data----------------------------------------
    //create of load the preferences XML file
    prefs = Gdx.app.getPreferences(PAPERSCAPE_PREFERENCES);
    //if there is no value for completed level, then set it to 1
    if (!prefs.contains(MAX_LEVEL_COMPLETED)) {
        prefs.putInteger(MAX_LEVEL_COMPLETED, 1);
        //save the preferences file
        prefs.flush();
    }
    //if there is no value for volume being toggled, then set it to true
    if (!prefs.contains(SOUND_IS_TOGGLED)) {
        prefs.putBoolean(SOUND_IS_TOGGLED, true);
        //save the preferences file
        prefs.flush();
    }
    //if there is no value for the total amount of stars, set it to 0
    if (!prefs.contains(TOTAL_STARS_COLLECTED)) {
        prefs.putInteger(TOTAL_STARS_COLLECTED, 0);
        //save the preferences file
        prefs.flush();
    }
    //if there is no value for the current amount of stars, set it to 0
    if (!prefs.contains(CURRENT_AMOUNT_OF_STARS)) {
        prefs.putInteger(CURRENT_AMOUNT_OF_STARS, 0);
        //save the preferences file
        prefs.flush();
    }
    //if there is no value for the total amount of deaths, set it to 0
    if (!prefs.contains(TOTAL_DEATHS)) {
        prefs.putInteger(TOTAL_DEATHS, 0);
        //save the preferences file
        prefs.flush();
    }

    //----------------------------Loading Music and Sounds to assetManager--------------------
    assetManager = new AssetManager();
    //store a sound object in the assetManager
    assetManager.load("sounds/star_pickup.mp3", Sound.class);
    //load all of the music files used by game
    //menu music
    assetManager.load("sounds/dj.mp3", Music.class);
    //level music
    assetManager.load("sounds/acid_jazz.ogg", Music.class);
    //level complete music
    assetManager.load("sounds/new_hamra.mp3", Music.class);
    //captured music
    assetManager.load("sounds/autoguano.mp3", Music.class);
    //tell the assetManager that all loading is done
    assetManager.finishLoading();

    //output the current max level completed to the console
    Gdx.app.log(MAX_LEVEL_COMPLETED, Integer.toString(getMaxLevelCompleted()));
    //--------------------------------------------------------------------------------------------------
}

From source file:com.pong.game.WorldRenderer.java

public WorldRenderer(Ball ball, Paddle player1, Paddle player2, int player1Score, int player2Score) {
    this.ball = ball;
    this.player1 = player1;
    this.player2 = player2;
    rend = new ShapeRenderer();
    font = new BitmapFont();
    this.player1Score = player1Score;
    this.player2Score = player2Score;
    batch = new SpriteBatch();
}

From source file:com.prisonbreak.game.MapControlRenderer.java

public MapControlRenderer(TiledMap map) {
    super(map);// w  w w. ja  v a 2  s. c o  m
    state = STATE.ONGOING;

    // ui components for "interaction conversation"
    stage = new Stage();

    // create new player
    player = new Player();
    player.setMapControlRenderer(this); // add map to player
    setPlayerToSpawm(); // add Player at spawming point of the map

    // extract a grid identifying position of walls -> for detecting collision
    extractBlockedWalls(); // stored in blockedWallUnitGrid

    // get list of static (blocked) objects
    staticObjects = map.getLayers().get("ObjectCollision").getObjects();

    // get list of door objects
    doorObjects = map.getLayers().get("DoorCollision").getObjects();

    // get list of interaction objects
    interactionObjects = map.getLayers().get("ObjectInteraction").getObjects();

    // extract winning location
    winningLocation = map.getLayers().get("SpecialLocations").getObjects().get("winningPoint");

    // initialize list of items, and message tree
    initializeListItems();
    initializeMessageTree();

    // initialize tiles
    //        tiles = new Array<TiledMapTile>();

    // initialize list of guards in the map
    initializeGuards();

    // create camera
    camera = new OrthographicCamera(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
    camera.translate(player.x, player.y);

    // create shape renderer
    shapeRenderer = new ShapeRenderer();
}

From source file:com.quadbits.gdxhelper.LWPGameModule.java

License:Apache License

@Provides
@PerGame
ShapeRenderer provideShapeRenderer() {
    return new ShapeRenderer();
}

From source file:com.ray3k.skincomposer.GradientDrawable.java

License:Open Source License

/**
 * //from  w ww. j  a va2s.  co  m
 * @param col1 bottom left color
 * @param col2 bottom right color
 * @param col3 top right color
 * @param col4 top left color
 */
public GradientDrawable(Color col1, Color col2, Color col3, Color col4) {
    if (g == null)
        g = new ShapeRenderer();

    this.col1 = new Color();
    this.col2 = new Color();
    this.col3 = new Color();
    this.col4 = new Color();
    setCol1(col1);
    setCol2(col2);
    setCol3(col3);
    setCol4(col4);

    borderLeft = 0.0f;
    borderTop = 0.0f;
    borderRight = 0.0f;
    borderBottom = 0.0f;
}

From source file:com.redthirddivision.astilade.entities.Entity.java

License:Apache License

public Entity(World world, Vector2 position, Texture2D texture) {
    this.world = world;
    this.position = position;
    this.texture = texture;
    this.sr = new ShapeRenderer();
    xTile = (int) (position.x / 64);
    yTile = (int) (position.y / 64);
    world.addEntity(this);
}

From source file:com.ridiculousRPG.DebugHelper.java

License:Apache License

public static void debugEvents(List<EventObject> dynamicRegions) {
    if (debugRenderer == null)
        debugRenderer = new ShapeRenderer();
    debugRenderer.setProjectionMatrix(GameBase.$().getCamera().projection);
    debugRenderer.begin(ShapeType.Rectangle);
    for (EventObject ev : dynamicRegions) {
        if (ev.visible) {
            debugRenderer.setColor(.7f, .7f, .7f, 1f);
            debugRenderer.rect(ev.drawBound.x, ev.drawBound.y, ev.drawBound.width, ev.drawBound.height);
        }/*w  w  w  .jav a  2 s  .c om*/
        debugRenderer.setColor(ev.blockingBehavior.color);
        debugRenderer.rect(ev.getX(), ev.getY(), Math.max(1, ev.getWidth()), Math.max(1, ev.getHeight()));
        if (ev.name != null) {
            getTextMapDebugger().addMessage(ev.name, ev.blockingBehavior.color.toFloatBits(),
                    ev.drawBound.x + 2f, ev.drawBound.y + ev.drawBound.height - 2, 0f, true);
        }
    }
    debugRenderer.end();
}

From source file:com.ridiculousRPG.DebugHelper.java

License:Apache License

public static void debugRectangle(Color color, Matrix4 transform, Rectangle... rects) {
    if (debugRenderer == null)
        debugRenderer = new ShapeRenderer();
    debugRenderer.setProjectionMatrix(GameBase.$().getCamera().projection);
    if (transform != null)
        debugRenderer.setTransformMatrix(transform);
    debugRenderer.begin(ShapeType.Rectangle);
    debugRenderer.setColor(color);//from   ww w .  j ava  2  s.  com
    for (Rectangle r : rects) {
        debugRenderer.rect(r.x, r.y, r.width, r.height);
    }
    if (transform != null)
        debugRenderer.identity();
    debugRenderer.end();
}

From source file:com.saltosion.gladiator.systems.RenderingSystem.java

License:Open Source License

@Override
public void addedToEngine(Engine engine) {
    updateEntities(engine);/*from   www  . j av a2s  . c o m*/

    batch = new SpriteBatch();

    font = new BitmapFont(Gdx.files.internal("fonts/font.fnt"));
    font.setUseIntegerPositions(false);

    debugRenderer = new ShapeRenderer();
    particleRenderer = new ShapeRenderer();

    camera = new OrthographicCamera();
    camera.setToOrtho(false, 1, 1);

    fontCamera = new OrthographicCamera();
    fontCamera.setToOrtho(false, Global.FONT_SCALE, Global.FONT_SCALE);

    drawableText = new ArrayList<TextObject>();
}

From source file:com.sidereal.dolphinoes.architecture.GameBatch.java

License:Apache License

/** Common initialisation code between the two constructors of {@link GameBatch}, initialising variables in the
 * scene./*from  ww w .  j a  v  a 2 s . c  o  m*/
 * <p>
 * If the scene or the batch name are null, a {@link GdxRuntimeException} is thrown.
 * 
 * @param scene
 *            The scene in which to add the game batch.
 * @param name
 *            name of the gameBatch, used for retrieval of Batch using {@link GameScene#getGameBatch(String)}. */
private final void initialiseBatch(GameScene scene, String name) {

    if (scene == null)
        throw new GdxRuntimeException("GameScene parameter passed to GameBatch is null");
    if (name == null)
        throw new GdxRuntimeException("String parameter passed to GameBatch is null");

    this.scene = scene;
    this.name = name;

    this.shapeRenderer = new ShapeRenderer();
    this.shapeRenderer.setAutoShapeType(true);
    this.spriteBatch = new SpriteBatch();
    this.objects = new ArrayList<GameObject>();
    this.priorityLevel = 0;
    this.sort = true;

    this.objectsComparator = new Comparator<GameObject>() {
        @Override
        public int compare(GameObject o1, GameObject o2) {

            if (o1.pos.getZ() != o2.pos.getZ()) {
                return (int) (o1.pos.getZ() - o2.pos.getZ());
            } else {
                return (int) o2.pos.getY() - (int) o1.pos.getY();
            }

        }
    };

    updateThread = new Thread(new Runnable() {
        @Override
        public void run() {

            doUpdate();
        }
    });
}