use of com.talosvfx.talos.runtime.test.utils.CameraController in project talos by rockbite.
the class ParticleControlTest method create.
@Override
public void create() {
orthographicCamera = new OrthographicCamera();
float width = 2000f;
float aspect = (float) Gdx.graphics.getWidth() / (float) Gdx.graphics.getHeight();
orthographicCamera.setToOrtho(false, width, width / aspect);
shapeRenderer = new ShapeRenderer();
batch = new SpriteBatch();
particleRenderer = new SpriteBatchParticleRenderer(batch);
cameraController = new CameraController(orthographicCamera);
ParticleEffectDescriptor descriptor = new ParticleEffectDescriptor();
TextureAtlas atlas = new TextureAtlas();
atlas.addRegion("fire", new TextureRegion(new TextureRegion(new Texture(Gdx.files.internal("fire.png")))));
descriptor.setAssetProvider(new TestAssetProvider(atlas));
descriptor.load(Gdx.files.internal("test.p"));
particleEffectInstance = descriptor.createEffectInstance();
particleEffectInstance.loopable = true;
stage = new Stage();
VisUI.load();
VisTextButton start = new VisTextButton("Start/Resume");
VisTextButton pause = new VisTextButton("Pause");
VisTextButton restart = new VisTextButton("Restart");
VisTextButton allowCompletion = new VisTextButton("Allow Completion");
start.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
particleEffectInstance.resume();
}
});
pause.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
particleEffectInstance.pause();
}
});
restart.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
particleEffectInstance.restart();
}
});
allowCompletion.addListener(new ClickListener() {
@Override
public void clicked(InputEvent event, float x, float y) {
particleEffectInstance.allowCompletion();
}
});
Table table = new Table();
table.setFillParent(true);
table.defaults().pad(10).top().left();
table.top().left();
table.add(start);
table.row();
table.add(pause);
table.row();
table.add(restart);
table.row();
table.add(allowCompletion);
stage.addActor(table);
Gdx.input.setInputProcessor(new InputMultiplexer(stage, cameraController));
}
Aggregations