mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-06 17:13:51 +00:00
fix(editor): add M2 render diagnostics to Info panel for NPC debugging
- Info panel now shows M2 renderer stats: model count, instance count, draw call count — visible in real-time to diagnose NPC rendering issues - When placing NPCs: if models=0/instances=0, the model failed to load If models>0 but draws=0, it's a culling/frame-sync issue If draws>0, the model IS rendering but may be too small to see
This commit is contained in:
parent
9322d37b81
commit
b25f7fa4bf
3 changed files with 9 additions and 0 deletions
|
|
@ -49,6 +49,7 @@ public:
|
||||||
NpcPresets& getNpcPresets() { return npcPresets_; }
|
NpcPresets& getNpcPresets() { return npcPresets_; }
|
||||||
AssetBrowser& getAssetBrowser() { return assetBrowser_; }
|
AssetBrowser& getAssetBrowser() { return assetBrowser_; }
|
||||||
rendering::TerrainRenderer* getTerrainRenderer();
|
rendering::TerrainRenderer* getTerrainRenderer();
|
||||||
|
rendering::M2Renderer* getM2Renderer() { return viewport_.getM2Renderer(); }
|
||||||
pipeline::AssetManager* getAssetManager() { return assetManager_.get(); }
|
pipeline::AssetManager* getAssetManager() { return assetManager_.get(); }
|
||||||
|
|
||||||
const std::string& getLoadedMap() const { return loadedMap_; }
|
const std::string& getLoadedMap() const { return loadedMap_; }
|
||||||
|
|
|
||||||
|
|
@ -1221,6 +1221,13 @@ void EditorUI::renderPropertiesPanel(EditorApp& app) {
|
||||||
if (holeChunks > 0) ImGui::Text("Hole chunks: %d", holeChunks);
|
if (holeChunks > 0) ImGui::Text("Hole chunks: %d", holeChunks);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// M2 render diagnostics
|
||||||
|
if (auto* m2r = app.getM2Renderer()) {
|
||||||
|
ImGui::Text("M2: %u models, %u instances, %u draws",
|
||||||
|
m2r->getModelCount(), m2r->getInstanceCount(),
|
||||||
|
m2r->getDrawCallCount());
|
||||||
|
}
|
||||||
|
|
||||||
ImGui::Separator();
|
ImGui::Separator();
|
||||||
auto pos = app.getEditorCamera().getCamera().getPosition();
|
auto pos = app.getEditorCamera().getCamera().getPosition();
|
||||||
ImGui::Text("Camera: %.0f, %.0f, %.0f", pos.x, pos.y, pos.z);
|
ImGui::Text("Camera: %.0f, %.0f, %.0f", pos.x, pos.y, pos.z);
|
||||||
|
|
|
||||||
|
|
@ -61,6 +61,7 @@ public:
|
||||||
glm::vec3 getLightDir() const { return lightDir_; }
|
glm::vec3 getLightDir() const { return lightDir_; }
|
||||||
|
|
||||||
rendering::TerrainRenderer* getTerrainRenderer() { return terrainRenderer_.get(); }
|
rendering::TerrainRenderer* getTerrainRenderer() { return terrainRenderer_.get(); }
|
||||||
|
rendering::M2Renderer* getM2Renderer() { return m2Renderer_.get(); }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool createPerFrameResources();
|
bool createPerFrameResources();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue