addon extended resource accounting
authorsapier <Sapier at GMX dot net>
Sun, 7 Apr 2013 18:22:06 +0000 (20:22 +0200)
committerkwolekr <kwolekr@minetest.net>
Mon, 8 Apr 2013 03:38:22 +0000 (23:38 -0400)
src/game.cpp

index 4f6eb472d904156a0be1bc6c7367f3917d635bab..aae88fe903082cb85ef549de616a6cf8a48ec22c 100644 (file)
@@ -25,6 +25,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #include <IGUIStaticText.h>
 #include <IGUIFont.h>
 #include <IMaterialRendererServices.h>
+#include "IMeshCache.h"
 #include "client.h"
 #include "server.h"
 #include "guiPauseMenu.h"
@@ -3314,6 +3315,21 @@ void the_game(
        delete shsrc;
        delete nodedef;
        delete itemdef;
+
+       //extended resource accounting
+       infostream << "Irrlicht resources after cleanup:" << std::endl;
+       infostream << "\tRemaining meshes   : "
+               << device->getSceneManager()->getMeshCache()->getMeshCount() << std::endl;
+       infostream << "\tRemaining textures : "
+               << driver->getTextureCount() << std::endl;
+       for (unsigned int i = 0; i < driver->getTextureCount(); i++ ) {
+               irr::video::ITexture* texture = driver->getTextureByIndex(i);
+               infostream << "\t\t" << i << ":" << texture->getName().getPath().c_str()
+                               << std::endl;
+       }
+       infostream << "\tRemaining materials: "
+               << driver-> getMaterialRendererCount ()
+               << " (note: irrlicht doesn't support removing renderers)"<< std::endl;
 }