76 lines
2.0 KiB
Java
76 lines
2.0 KiB
Java
package com.me.brickbuster;
|
|
|
|
import com.badlogic.gdx.Game;
|
|
import com.badlogic.gdx.Gdx;
|
|
import com.badlogic.gdx.assets.AssetManager;
|
|
import com.badlogic.gdx.graphics.GL20;
|
|
import com.badlogic.gdx.graphics.OrthographicCamera;
|
|
import com.badlogic.gdx.graphics.Texture;
|
|
import com.badlogic.gdx.graphics.g2d.BitmapFont;
|
|
import com.badlogic.gdx.graphics.g2d.PolygonSpriteBatch;
|
|
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
|
|
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
|
|
import com.badlogic.gdx.math.Matrix4;
|
|
import com.badlogic.gdx.utils.viewport.FitViewport;
|
|
import com.badlogic.gdx.utils.viewport.Viewport;
|
|
import com.me.brickbuster.state.MenuState;
|
|
import com.me.brickbuster.state.PlayState;
|
|
|
|
public class BrickBuster extends Game {
|
|
|
|
public static final String TITLE = "Brick Buster";
|
|
// 9*16 board area
|
|
public static final int BOARD_WIDTH = 2160;
|
|
public static final int BOARD_HEIGHT = 3840;
|
|
|
|
public OrthographicCamera cam;
|
|
public Viewport viewport;
|
|
|
|
public BitmapFont font;
|
|
public SpriteBatch sb;
|
|
public SpriteBatch fb;
|
|
public ShapeRenderer sr;
|
|
|
|
public AssetManager assets;
|
|
|
|
@Override
|
|
public void create () {
|
|
cam = new OrthographicCamera();
|
|
viewport = new FitViewport(BOARD_WIDTH, BOARD_HEIGHT, cam);
|
|
viewport.apply(true);
|
|
|
|
font = new BitmapFont();
|
|
font.getData().setScale(4);
|
|
font.getRegion().getTexture().setFilter(Texture.TextureFilter.Linear, Texture.TextureFilter.Linear);
|
|
|
|
sb = new SpriteBatch();
|
|
fb = new SpriteBatch();
|
|
sr = new ShapeRenderer();
|
|
|
|
assets = new AssetManager();
|
|
|
|
setScreen(new MenuState(this));
|
|
}
|
|
|
|
@Override
|
|
public void render () {
|
|
Gdx.gl.glClearColor(0f,0f,0f,1);
|
|
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
|
|
// Render the current Screen (State)
|
|
super.render();
|
|
}
|
|
|
|
@Override
|
|
public void resize(int width, int height) {
|
|
viewport.update(width, height);
|
|
|
|
Matrix4 projection = cam.combined.cpy().scl(PlayState.PIXEL_PER_METER);
|
|
sb.setProjectionMatrix(projection);
|
|
fb.setProjectionMatrix(cam.combined);
|
|
sr.setProjectionMatrix(projection);
|
|
|
|
super.resize(width, height);
|
|
}
|
|
|
|
}
|