summaryrefslogtreecommitdiff
path: root/core/src/org/snoopdesigns/endless/renderer
diff options
context:
space:
mode:
authorDmitri Morozov <snoopdesigns@gmail.com>2024-02-02 18:58:12 +0100
committerue86388 <dmitrii.morozov@sbb.ch>2024-02-02 18:58:12 +0100
commite3935fe4b6ecfbe161001fc95d295f53e8520c52 (patch)
tree0cb9525d8a616674be57aa5cc90444c081fadc03 /core/src/org/snoopdesigns/endless/renderer
parente55b03a924ab9dc02e2baca77ce49deae27dda6d (diff)
Initial commit
Diffstat (limited to 'core/src/org/snoopdesigns/endless/renderer')
-rw-r--r--core/src/org/snoopdesigns/endless/renderer/CursorRenderer.java29
-rw-r--r--core/src/org/snoopdesigns/endless/renderer/DebugRenderer.java54
-rw-r--r--core/src/org/snoopdesigns/endless/renderer/Renderer.java11
3 files changed, 94 insertions, 0 deletions
diff --git a/core/src/org/snoopdesigns/endless/renderer/CursorRenderer.java b/core/src/org/snoopdesigns/endless/renderer/CursorRenderer.java
new file mode 100644
index 0000000..05b12f9
--- /dev/null
+++ b/core/src/org/snoopdesigns/endless/renderer/CursorRenderer.java
@@ -0,0 +1,29 @@
+package org.snoopdesigns.endless.renderer;
+
+import com.badlogic.gdx.Gdx;
+import com.badlogic.gdx.graphics.Cursor;
+import com.badlogic.gdx.graphics.Pixmap;
+
+public class CursorRenderer implements Renderer {
+
+ private Pixmap crosshair;
+
+ @Override
+ public void create() {
+ crosshair = new Pixmap(Gdx.files.internal("crosshair.png"));
+ final Cursor cursor = Gdx.graphics.newCursor(crosshair,
+ crosshair.getWidth() / 2,
+ crosshair.getHeight() / 2);
+ Gdx.graphics.setCursor(cursor);
+ }
+
+ @Override
+ public void render() {
+
+ }
+
+ @Override
+ public void dispose() {
+ crosshair.dispose();
+ }
+}
diff --git a/core/src/org/snoopdesigns/endless/renderer/DebugRenderer.java b/core/src/org/snoopdesigns/endless/renderer/DebugRenderer.java
new file mode 100644
index 0000000..f31336b
--- /dev/null
+++ b/core/src/org/snoopdesigns/endless/renderer/DebugRenderer.java
@@ -0,0 +1,54 @@
+package org.snoopdesigns.endless.renderer;
+
+import com.badlogic.gdx.Gdx;
+import com.badlogic.gdx.graphics.Color;
+import com.badlogic.gdx.graphics.g2d.BitmapFont;
+import com.badlogic.gdx.graphics.g2d.SpriteBatch;
+import org.snoopdesigns.endless.context.Context;
+
+public class DebugRenderer implements Renderer {
+
+ private BitmapFont font;
+ private SpriteBatch batch;
+
+ @Override
+ public void create() {
+ font = new BitmapFont(Gdx.files.internal("calibri.fnt"), false);
+ font.setColor(Color.GREEN);
+ font.getData().setScale(0.7f);
+ batch = new SpriteBatch();
+ }
+
+ @Override
+ public void render() {
+ batch.begin();
+ final String debugText = String.format("""
+ window size %d x %d
+ viewport %f %f
+ zoom %f
+ position %f %f
+ angle %f
+ speed %f
+ velocity %f %f
+ """,
+ Gdx.graphics.getWidth(),
+ Gdx.graphics.getHeight(),
+ Context.getInstance().getCameraContext().getViewport().x,
+ Context.getInstance().getCameraContext().getViewport().y,
+ Context.getInstance().getCameraContext().getZoom(),
+ Context.getInstance().getCameraContext().getPosition().x,
+ Context.getInstance().getCameraContext().getPosition().y,
+ Context.getInstance().getPlayerShip().getBody().getAngle(),
+ Context.getInstance().getPlayerShip().getBody().getLinearVelocity().len(),
+ Context.getInstance().getPlayerShip().getBody().getLinearVelocity().x,
+ Context.getInstance().getPlayerShip().getBody().getLinearVelocity().y);
+ font.draw(batch, debugText, 10f, 190f);
+ batch.end();
+ }
+
+ @Override
+ public void dispose() {
+ font.dispose();
+ batch.dispose();
+ }
+}
diff --git a/core/src/org/snoopdesigns/endless/renderer/Renderer.java b/core/src/org/snoopdesigns/endless/renderer/Renderer.java
new file mode 100644
index 0000000..a98e36a
--- /dev/null
+++ b/core/src/org/snoopdesigns/endless/renderer/Renderer.java
@@ -0,0 +1,11 @@
+package org.snoopdesigns.endless.renderer;
+
+import org.snoopdesigns.endless.input.DefaultInputProcessor;
+
+public interface Renderer extends DefaultInputProcessor {
+ void create();
+ void render();
+ void dispose();
+ default void resize(int width, int height) {
+ }
+}