add "Show Hitboxes" to the debug panel
This commit is contained in:
parent
9efb327270
commit
5522cfc231
@ -33,6 +33,7 @@ static std::shared_ptr<Label> create_label(wstringsupplier supplier) {
|
|||||||
return label;
|
return label;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: move to xml
|
||||||
std::shared_ptr<UINode> create_debug_panel(
|
std::shared_ptr<UINode> create_debug_panel(
|
||||||
Engine* engine,
|
Engine* engine,
|
||||||
Level* level,
|
Level* level,
|
||||||
@ -181,6 +182,18 @@ std::shared_ptr<UINode> create_debug_panel(
|
|||||||
});
|
});
|
||||||
panel->add(checkbox);
|
panel->add(checkbox);
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
auto checkbox = std::make_shared<FullCheckBox>(
|
||||||
|
L"Show Hitboxes", glm::vec2(400, 24)
|
||||||
|
);
|
||||||
|
checkbox->setSupplier([=]() {
|
||||||
|
return WorldRenderer::showEntitiesDebug;
|
||||||
|
});
|
||||||
|
checkbox->setConsumer([=](bool checked) {
|
||||||
|
WorldRenderer::showEntitiesDebug = checked;
|
||||||
|
});
|
||||||
|
panel->add(checkbox);
|
||||||
|
}
|
||||||
panel->refresh();
|
panel->refresh();
|
||||||
return panel;
|
return panel;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -44,6 +44,7 @@
|
|||||||
#include <glm/gtc/matrix_transform.hpp>
|
#include <glm/gtc/matrix_transform.hpp>
|
||||||
|
|
||||||
bool WorldRenderer::showChunkBorders = false;
|
bool WorldRenderer::showChunkBorders = false;
|
||||||
|
bool WorldRenderer::showEntitiesDebug = false;
|
||||||
|
|
||||||
WorldRenderer::WorldRenderer(Engine* engine, LevelFrontend* frontend, Player* player)
|
WorldRenderer::WorldRenderer(Engine* engine, LevelFrontend* frontend, Player* player)
|
||||||
: engine(engine),
|
: engine(engine),
|
||||||
@ -232,7 +233,7 @@ void WorldRenderer::renderLines(Camera* camera, Shader* linesShader) {
|
|||||||
if (player->selection.vox.id != BLOCK_VOID) {
|
if (player->selection.vox.id != BLOCK_VOID) {
|
||||||
renderBlockSelection();
|
renderBlockSelection();
|
||||||
}
|
}
|
||||||
if (player->debug) {
|
if (player->debug && showEntitiesDebug) {
|
||||||
level->entities->renderDebug(*lineBatch, *frustumCulling);
|
level->entities->renderDebug(*lineBatch, *frustumCulling);
|
||||||
}
|
}
|
||||||
lineBatch->render();
|
lineBatch->render();
|
||||||
|
|||||||
@ -63,6 +63,7 @@ class WorldRenderer {
|
|||||||
);
|
);
|
||||||
public:
|
public:
|
||||||
static bool showChunkBorders;
|
static bool showChunkBorders;
|
||||||
|
static bool showEntitiesDebug;
|
||||||
|
|
||||||
WorldRenderer(Engine* engine, LevelFrontend* frontend, Player* player);
|
WorldRenderer(Engine* engine, LevelFrontend* frontend, Player* player);
|
||||||
~WorldRenderer();
|
~WorldRenderer();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user