resize tested and many issues fixed; horizontal visualizer scales to

height;
This commit is contained in:
2018-08-15 23:17:04 -05:00
parent 7a810299ce
commit 7fb42a63f8
6 changed files with 61 additions and 42 deletions

View File

@@ -14,11 +14,10 @@ public class DesktopLauncher {
config.resizable = false;
config.useHDPI = true;
config.samples = 2;
config.width = 128;
config.height = 128;
core = new RhythmBullet();
core.setup(new SplashScreen(), new DesktopAssetPack());
new LwjglApplication(core, config);
}
}

View File

@@ -26,6 +26,8 @@ import zero1hd.rhythmbullet.graphics.ui.Page;
import zero1hd.rhythmbullet.util.ResizeReadyScreen;
public class MainScreen extends ScreenAdapter implements ResizeReadyScreen {
private boolean resizing;
private Stage stage;
private Vector3 cameraPosition;
private Listeners listeners;
@@ -56,8 +58,7 @@ public class MainScreen extends ScreenAdapter implements ResizeReadyScreen {
stage = new Stage(new ScreenViewport());
cameraPosition = new Vector3(stage.getCamera().position);
MusicList musicList = new MusicList(new DesktopAudioProcessorFactory());
musicList.setSearchPath(core.getPreferences().getString("music dir"));
MusicList musicList = new MusicList(new DesktopAudioProcessorFactory(), core.getPreferences().getString("music dir"));
musicController = new MusicController(musicList, core.getPreferences());
musicController.setAutoPlay(true);
musicController.setShuffle(true);
@@ -65,6 +66,7 @@ public class MainScreen extends ScreenAdapter implements ResizeReadyScreen {
musicMetadataController = new MusicMetadataController(musicList);
listeners = new Listeners();
screenBatch = new SpriteBatch();
}
@Override
@@ -89,20 +91,24 @@ public class MainScreen extends ScreenAdapter implements ResizeReadyScreen {
}
private void draw() {
stage.getViewport().apply();
screenBatch.begin();
screenBatch.draw(background, 0, 0, stage.getWidth(), stage.getHeight());
screenBatch.end();
stage.draw();
if (!resizing) {
stage.getViewport().apply();
screenBatch.begin();
screenBatch.draw(background, 0, 0, stage.getViewport().getScreenWidth(), stage.getViewport().getScreenHeight());
screenBatch.end();
stage.draw();
}
}
@Override
public void preAssetLoad() {
resizing = true;
stage.clear();
bloomShader.dispose();
bloomShader = null;
if (bloomShader != null) {
bloomShader.dispose();
bloomShader = null;
}
background = null;
screenBatch.dispose();
musicController.deleteObservers();
}
@@ -110,9 +116,6 @@ public class MainScreen extends ScreenAdapter implements ResizeReadyScreen {
public void postAssetLoad() {
background = rhythmBullet.getAssetManager().get("backgrounds/mainBG.png", Texture.class);
screenBatch = new SpriteBatch();
mainPage = new MainPage(musicController, rhythmBullet.getAssetManager(), rhythmBullet.getSkin(), listeners.musicSelectionPageButtonListener, listeners.optionsPageButtonListener);
stage.addActor(mainPage);
@@ -161,9 +164,8 @@ public class MainScreen extends ScreenAdapter implements ResizeReadyScreen {
musicController.addObserver(musicSelectionPage);
musicController.addObserver(mainPage);
musicController.getMusicList().asyncSearch();
musicController.getMusicList().asyncSearch(false);
resizing = false;
}
@Override
@@ -271,9 +273,15 @@ public class MainScreen extends ScreenAdapter implements ResizeReadyScreen {
ChangeListener bloomLevelShaderListener = new ChangeListener() {
@Override
public void changed(ChangeEvent event, Actor actor) {
if (graphicsPage.getBloomLevel() > 0) {
int bloomLevel = 0;
if (graphicsPage != null) {
bloomLevel = graphicsPage.getBloomLevel();
} else {
bloomLevel = rhythmBullet.getPreferences().getInteger("glow shader");
}
if (bloomLevel > 0) {
if (bloomShader == null) bloomShader = new BloomShader(screenBatch);
bloomShader.setBloomLevel((int) graphicsPage.getBloomLevel());
bloomShader.setBloomLevel(bloomLevel);
} else if (bloomShader != null) {
bloomShader.dispose();
bloomShader = null;

View File

@@ -86,7 +86,7 @@ public class OptionsPage extends Page {
musicSearchTimer -= delta;
if (musicSearchTimer <= 0) {
musicController.getMusicList().setSearchPath(directoryField.getText());
musicController.getMusicList().asyncSearch();
musicController.getMusicList().asyncSearch(false);
}
}
super.act(delta);