Coord and rect views and freezing; Fixed font glitches.

This commit is contained in:
Ondřej Hruška
2014-04-10 22:53:25 +02:00
parent ebac276ed2
commit e940c53dd6
41 changed files with 1574 additions and 896 deletions
+1 -1
View File
@@ -64,7 +64,7 @@ public class App extends BaseApp {
screens.add(new ScreenTestFont(this));
screens.add(new ScreenTestRender(this));
screens.showScreen("test.render");
screens.showScreen("test.cat");
}
+17 -14
View File
@@ -6,10 +6,11 @@ import mightypork.gamecore.audio.players.EffectPlayer;
import mightypork.gamecore.audio.players.LoopPlayer;
import mightypork.gamecore.control.AppAccess;
import mightypork.gamecore.control.BaseApp;
import mightypork.gamecore.render.fonts.DeferredFont;
import mightypork.gamecore.render.fonts.DeferredFont.FontStyle;
import mightypork.gamecore.render.fonts.FontBank;
import mightypork.gamecore.render.fonts.GLFont;
import mightypork.gamecore.render.fonts.Glyphs;
import mightypork.gamecore.render.fonts.impl.DeferredFont;
import mightypork.gamecore.render.textures.DeferredTexture;
import mightypork.gamecore.render.textures.FilterMode;
import mightypork.gamecore.render.textures.TextureBank;
import mightypork.gamecore.render.textures.TxQuad;
@@ -54,23 +55,25 @@ public class Res {
private static void loadFonts()
{
//@formatter:off
fonts.loadFont(
"default",
new DeferredFont("/res/font/PolygonPixel5x7Standard.ttf",
null,
16,
FontStyle.PLAIN,
FilterMode.NEAREST
)
);
//@formatter:on
DeferredFont font;
font = new DeferredFont("/res/font/PolygonPixel5x7Standard.ttf", Glyphs.basic, 16);
font.setAntialias(true);
font.setFilter(FilterMode.NEAREST);
fonts.loadFont("default", font);
}
private static void loadTextures()
{
textures.loadTexture("test.kitten", "/res/img/kitten.png", FilterMode.LINEAR, FilterMode.NEAREST, WrapMode.CLAMP);
DeferredTexture texture;
texture = new DeferredTexture("/res/img/kitten.png");
texture.setFilter(FilterMode.LINEAR);
texture.setWrap(WrapMode.CLAMP);
textures.loadTexture("test.kitten", texture);
}
+4 -2
View File
@@ -2,7 +2,6 @@ package mightypork.rogue.screens;
import static mightypork.gamecore.gui.constraints.Constraints.*;
import static org.lwjgl.opengl.GL11.*;
import mightypork.gamecore.gui.components.painters.TextPainter;
import mightypork.gamecore.gui.constraints.RectConstraint;
import mightypork.gamecore.gui.screens.Screen;
@@ -11,6 +10,7 @@ import mightypork.gamecore.render.fonts.FontRenderer.Align;
import mightypork.gamecore.render.fonts.GLFont;
import mightypork.rogue.Res;
import mightypork.utils.math.color.RGB;
import mightypork.utils.math.coord.Coord;
import mightypork.utils.string.StringProvider;
@@ -32,11 +32,13 @@ public class LayerFps extends ScreenLayer {
};
final GLFont font = Res.getFont("default");
final RectConstraint constraint = _round(_move(_grow_down(_right_top(this), 32), -8, 8));
tp = new TextPainter(font, Align.RIGHT, RGB.WHITE, text);
tp.setContext(constraint);
tp.setShadow(RGB.BLACK, Coord.at(1, 1));
}
@@ -9,7 +9,6 @@ import mightypork.gamecore.control.bus.events.MouseButtonEvent;
import mightypork.gamecore.control.timing.Updateable;
import mightypork.gamecore.gui.components.painters.ImagePainter;
import mightypork.gamecore.gui.components.painters.TextPainter;
import mightypork.gamecore.gui.constraints.RectConstraint;
import mightypork.gamecore.gui.screens.Screen;
import mightypork.gamecore.gui.screens.ScreenLayer;
import mightypork.gamecore.input.KeyStroke;
@@ -40,17 +39,20 @@ public class LayerFlyingCat extends ScreenLayer implements Updateable, MouseButt
xPos.setTo(DisplaySystem.getWidth() / 2);
yPos.setTo(DisplaySystem.getHeight() / 2);
final RectConstraint catbox = _centered(_box(size, size), xPos, yPos);
cat = new ImagePainter(Res.getTxQuad("test.kitten"));
cat.setContext(catbox);
cat.setContext(_centered(_box(size, size), xPos, yPos));
final RectConstraint fpsbox = _centered(_box(64, 64), _mouseX, _mouseY);
tp = new TextPainter(Res.getFont("default"), Align.CENTER, RGB.YELLOW, "Meow");
tp.setContext(fpsbox);
tp = new TextPainter(Res.getFont("default"));
tp.setAlign(Align.CENTER);
tp.setColor(RGB.YELLOW);
tp.setText("Meow!");
tp.setShadow(RGB.dark(0.8), Coord.at(2, 2));
tp.setContext(_centered(_box(64, 64), _mouseX, _mouseY));
/*
* Register keys
*/
bindKeyStroke(new KeyStroke(Keys.KEY_RETURN), new Runnable() {
@Override
@@ -69,6 +71,8 @@ public class LayerFlyingCat extends ScreenLayer implements Updateable, MouseButt
size.update(delta);
xPos.update(delta);
yPos.update(delta);
System.out.println(cat.getRect());
}
@@ -81,8 +85,8 @@ public class LayerFlyingCat extends ScreenLayer implements Updateable, MouseButt
final double t = 2;
size.fadeTo(100 + rand.nextInt(700), t / 2D);
xPos.fadeTo(pos.x, t);
yPos.fadeTo(pos.y, t);
xPos.fadeTo(pos.x(), t);
yPos.fadeTo(pos.y(), t);
}
@@ -62,4 +62,11 @@ public class ScreenTestCat extends LayeredScreen {
return "test.cat";
}
@Override
protected void renderScreen()
{
super.renderScreen();
}
}