shader now functions with background; fixed shader option not updating live

This commit is contained in:
Harrison Deng 2018-01-29 20:26:45 -06:00
parent 1b7f3233e8
commit c339c61697
2 changed files with 16 additions and 7 deletions

View File

@ -43,8 +43,10 @@ public class GraphicsOptions extends Table {
public void changed(ChangeEvent event, Actor actor) {
save();
if (glowShader.isChecked()) {
mainMenu.setBlurlvl(1);
enhancedGlow.setDisabled(false);
} else {
mainMenu.setBlurlvl(0);
enhancedGlow.setChecked(false);
enhancedGlow.setDisabled(true);
}

View File

@ -162,6 +162,9 @@ public class MainMenu extends ScreenAdapter implements AdvancedResizeScreen {
stage.getViewport().apply();
Gdx.gl.glClearColor(0.2f, 0.2f, 0.2f, 1f);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
screenBatch.begin();
screenBatch.draw(background, 0, 0);
screenBatch.end();
draw();
normalBuffer.end();
@ -295,14 +298,17 @@ public class MainMenu extends ScreenAdapter implements AdvancedResizeScreen {
}
public void unloadShaders() {
Gdx.app.debug("MainMenu", "shader being unloaded.");
if (core.getPrefs().getBoolean("glow shader")) {
brightFilterShader.dispose();
combineShader.dispose();
gaussianBlurShader.dispose();
normalBuffer.dispose();
lightFilterBuffer.dispose();
vBlur.dispose();
hBlur.dispose();
if (shaderLoaded) {
brightFilterShader.dispose();
combineShader.dispose();
gaussianBlurShader.dispose();
normalBuffer.dispose();
lightFilterBuffer.dispose();
vBlur.dispose();
hBlur.dispose();
}
}
brightFilterShader = null;
@ -350,6 +356,7 @@ public class MainMenu extends ScreenAdapter implements AdvancedResizeScreen {
}
public void attemptLoadShaders() {
Gdx.app.debug("MainMenu", "Attempting to load shaders.");
if (core.getPrefs().getBoolean("glow shader", true) && !shaderLoaded) {
if (core.getPrefs().getBoolean("enhanced glow", false)) {
blurlvl = 5;