player entity debug menu

This commit is contained in:
austin 2024-03-20 18:57:48 -04:00
parent 077cffa2e2
commit 86edabf4de
5 changed files with 52 additions and 11 deletions

View File

@ -170,6 +170,12 @@ Cellular Automata Fluid Dynamics System
- Advect force
- Advect density
- Diffuse density
- Do not bound to single chunks
Fluid Chunk System
- Basic model creation
- Streaming chunks over network
- Only add compression when it starts to become an issue
Fix character movement
- Walking left or right while turning camera is very jittery
@ -181,6 +187,12 @@ Fix Character creation preview not working
Clean up main method/class
Bring LWJGL version up to latest
Include Remotery library
Physics-controlled objects system
Shader library system
- Abiltiy to include the shader library in individual files (ie implement #include)

View File

@ -113,9 +113,7 @@ public class FluidCell {
* Fills in the internal arrays of data for generate terrain models
*/
private void fillInData(){
if(worldPos.x == 1 && worldPos.y == 0 && worldPos.z == 0){
System.out.println("aaaa");
}
//
//fill in data
//
@ -293,7 +291,6 @@ public class FluidCell {
currZ >= 0 && currZ < ServerTerrainChunk.CHUNK_DATA_GENERATOR_SIZE &&
(1 + weights[x][y][z]) < weights[currX][currY][currZ]
){
System.out.println("set neighbor weight");
weights[x][y][z] = -(1 - weights[currX][currY][currZ]);
}
}

View File

@ -18,8 +18,8 @@ import electrosphere.engine.loadingthreads.LoadingThread;
import electrosphere.game.config.UserSettings;
import electrosphere.game.server.world.MacroData;
import electrosphere.logger.LoggerInterface;
import electrosphere.menu.ImGuiWindowMacros;
import electrosphere.renderer.RenderingEngine;
import electrosphere.renderer.ui.imgui.ImGuiWindowMacros;
import electrosphere.server.simulation.MacroSimulation;

View File

@ -1,11 +1,15 @@
package electrosphere.renderer.ui.imgui;
package electrosphere.menu;
import java.util.HashMap;
import java.util.Map;
import electrosphere.audio.VirtualAudioSource;
import electrosphere.engine.Globals;
import electrosphere.entity.EntityUtils;
import electrosphere.renderer.RenderingEngine;
import electrosphere.renderer.ui.imgui.ImGuiLinePlot;
import electrosphere.renderer.ui.imgui.ImGuiBarPlot;
import electrosphere.renderer.ui.imgui.ImGuiWindow;
import electrosphere.renderer.ui.imgui.ImGuiLinePlot.ImGuiLinePlotDataset;
import electrosphere.renderer.ui.imgui.ImGuiWindow.ImGuiWindowCallback;
import imgui.ImGui;
@ -35,6 +39,9 @@ public class ImGuiWindowMacros {
private static boolean showAllVirtualAudioChildren = false;
private static boolean showMappedVirtualAudioChildren = true;
//player entity details
private static ImGuiWindow playerEntityWindow;
/**
* Initializes imgui windows
*/
@ -43,6 +50,7 @@ public class ImGuiWindowMacros {
createFramerateGraph();
createServerFrametimeGraph();
createAudioDebugMenu();
createPlayerEntityDebugWindow();
}
/**
@ -126,7 +134,7 @@ public class ImGuiWindowMacros {
*/
private static void createAudioDebugMenu(){
audioDebugMenu = new ImGuiWindow("Audio");
audioDebugMenu.callback = new ImGuiWindowCallback() {
audioDebugMenu.setCallback(new ImGuiWindowCallback() {
@Override
public void exec() {
//audio engine details
@ -175,18 +183,38 @@ public class ImGuiWindowMacros {
}
}
}
};
});
audioDebugMenu.setOpen(false);
RenderingEngine.addImGuiWindow(audioDebugMenu);
}
/**
* Create player entity debug menu
*/
private static void createPlayerEntityDebugWindow(){
playerEntityWindow = new ImGuiWindow("Player Entity");
playerEntityWindow.setCallback(new ImGuiWindowCallback() {
@Override
public void exec() {
//audio engine details
ImGui.text("Player Entity Details");
if(Globals.playerEntity != null){
ImGui.text("Position: " + EntityUtils.getPosition(Globals.playerEntity));
}
}
});
playerEntityWindow.setOpen(false);
RenderingEngine.addImGuiWindow(playerEntityWindow);
}
/**
* Inits the main debug menu
*/
private static void createMainDebugMenu(){
mainDebugWindow = new ImGuiWindow("Debug");
mainDebugWindow.callback = new ImGuiWindowCallback() {
mainDebugWindow.setCallback(new ImGuiWindowCallback() {
@Override
public void exec() {
//show global framerate line graph
@ -201,12 +229,16 @@ public class ImGuiWindowMacros {
if(ImGui.button("Show Audio Debug Menu")){
audioDebugMenu.setOpen(true);
}
//show audio debug
if(ImGui.button("Show Player Entity Debug Menu")){
playerEntityWindow.setOpen(true);
}
//close button
if(ImGui.button("Close")){
mainDebugWindow.setOpen(false);
}
}
};
});
RenderingEngine.addImGuiWindow(mainDebugWindow);
}

View File

@ -6,8 +6,8 @@ import electrosphere.engine.Main;
import electrosphere.entity.Entity;
import electrosphere.entity.Scene;
import electrosphere.entity.types.hitbox.HitboxManager;
import electrosphere.menu.ImGuiWindowMacros;
import electrosphere.net.parser.net.message.NetworkMessage;
import electrosphere.renderer.ui.imgui.ImGuiWindowMacros;
import electrosphere.server.datacell.interfaces.DataCellManager;
import java.util.HashSet;