improve debug hud
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
package wtf.beatrice.retrorender;
|
package wtf.beatrice.retrorender;
|
||||||
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
|
import com.badlogic.gdx.Input;
|
||||||
import com.badlogic.gdx.Screen;
|
import com.badlogic.gdx.Screen;
|
||||||
import com.badlogic.gdx.graphics.GL20;
|
import com.badlogic.gdx.graphics.GL20;
|
||||||
import com.badlogic.gdx.graphics.PerspectiveCamera;
|
import com.badlogic.gdx.graphics.PerspectiveCamera;
|
||||||
@@ -41,6 +42,8 @@ public class GameScreen implements Screen {
|
|||||||
private static final int RETRO_WIDTH = 320;
|
private static final int RETRO_WIDTH = 320;
|
||||||
private static final int RETRO_HEIGHT = 180;
|
private static final int RETRO_HEIGHT = 180;
|
||||||
|
|
||||||
|
private boolean showHud = false;
|
||||||
|
|
||||||
public GameScreen(Main game) {
|
public GameScreen(Main game) {
|
||||||
this.game = game;
|
this.game = game;
|
||||||
}
|
}
|
||||||
@@ -127,6 +130,10 @@ public class GameScreen implements Screen {
|
|||||||
cameraController.update(delta, world);
|
cameraController.update(delta, world);
|
||||||
world.update(delta);
|
world.update(delta);
|
||||||
|
|
||||||
|
if (Gdx.input.isKeyJustPressed(Input.Keys.TAB)) {
|
||||||
|
showHud = !showHud;
|
||||||
|
}
|
||||||
|
|
||||||
// --- shadow pass: render depth from light's point of view
|
// --- shadow pass: render depth from light's point of view
|
||||||
// point to center the shadow camera on;
|
// point to center the shadow camera on;
|
||||||
// can be adjusted this later (e.g. follow player).
|
// can be adjusted this later (e.g. follow player).
|
||||||
@@ -150,7 +157,13 @@ public class GameScreen implements Screen {
|
|||||||
modelBatch.end();
|
modelBatch.end();
|
||||||
|
|
||||||
// --- HUD
|
// --- HUD
|
||||||
hud.render(RETRO_WIDTH, RETRO_HEIGHT, camera);
|
if (showHud)
|
||||||
|
hud.render(
|
||||||
|
RETRO_WIDTH,
|
||||||
|
RETRO_HEIGHT,
|
||||||
|
camera,
|
||||||
|
cameraController.getYaw(),
|
||||||
|
cameraController.getPitch());
|
||||||
|
|
||||||
frameBuffer.end();
|
frameBuffer.end();
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,9 @@ public class DebugHud {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// render HUD in virtual resolution
|
// render HUD in virtual resolution
|
||||||
public void render(int width, int height, PerspectiveCamera camera) {
|
public void render(int width, int height,
|
||||||
|
PerspectiveCamera camera,
|
||||||
|
float yaw, float pitch) {
|
||||||
// set up orthographic projection matching target size
|
// set up orthographic projection matching target size
|
||||||
batch.getProjectionMatrix().setToOrtho2D(0, 0, width, height);
|
batch.getProjectionMatrix().setToOrtho2D(0, 0, width, height);
|
||||||
|
|
||||||
@@ -57,6 +59,9 @@ public class DebugHud {
|
|||||||
|
|
||||||
String posText = String.format("X: %.2f Y: %.2f Z: %.2f", x, y, z);
|
String posText = String.format("X: %.2f Y: %.2f Z: %.2f", x, y, z);
|
||||||
font.draw(batch, posText, 5f, height - 15f);
|
font.draw(batch, posText, 5f, height - 15f);
|
||||||
|
|
||||||
|
String angText = String.format("Yaw: %.1f Pitch: %.1f", yaw, pitch);
|
||||||
|
font.draw(batch, angText, 5f, height - 25f);
|
||||||
}
|
}
|
||||||
|
|
||||||
batch.end();
|
batch.end();
|
||||||
|
|||||||
@@ -236,6 +236,9 @@ public class FpsCameraController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public float getYaw() { return yaw; }
|
||||||
|
public float getPitch() { return pitch; }
|
||||||
|
|
||||||
public void setMoveSpeed(float moveSpeed) { this.moveSpeed = moveSpeed; }
|
public void setMoveSpeed(float moveSpeed) { this.moveSpeed = moveSpeed; }
|
||||||
public void setMouseSensitivity(float mouseSensitivity) { this.mouseSensitivity = mouseSensitivity; }
|
public void setMouseSensitivity(float mouseSensitivity) { this.mouseSensitivity = mouseSensitivity; }
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user